

<!doctype html>
<html lang="zh" class="no-js">
  <head>
    
      <meta charset="utf-8">
      <meta name="viewport" content="width=device-width,initial-scale=1">
      
      
        <meta name="author" content="SEMHAQ">
      
      
        <link rel="canonical" href="https://github.com/SEMHAQ/NoteBook/">
      
      
      
        <link rel="next" href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1605.%20%E7%BB%99%E5%AE%9A%E8%A1%8C%E5%92%8C%E5%88%97%E7%9A%84%E5%92%8C%E6%B1%82%E5%8F%AF%E8%A1%8C%E7%9F%A9%E9%98%B5/">
      
      
      <link rel="icon" href="images/logo.png">
      <meta name="generator" content="mkdocs-1.5.3, mkdocs-material-9.4.14">
    
    
      
        <title>SEMHAQ/NoteBook</title>
      
    
    
      <link rel="stylesheet" href="assets/stylesheets/main.fad675c6.min.css">
      
        
        <link rel="stylesheet" href="assets/stylesheets/palette.356b1318.min.css">
      
      


    
    
      
    
    
      
        
        
        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
        <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
        <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
      
    
    
    <script>__md_scope=new URL(".",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
    
      

    
    
    
  <link rel="stylesheet" href="assets/stylesheets/custom.00c04c01.min.css">

   <link href="assets/stylesheets/glightbox.min.css" rel="stylesheet"/><style>
        html.glightbox-open { overflow: initial; height: 100%; }
        .gslide-title { margin-top: 0px; user-select: text; }
        .gslide-desc { color: #666; user-select: text; }
        .gslide-image img { background: white; }
        
            .gscrollbar-fixer { padding-right: 15px; }
            .gdesc-inner { font-size: 0.75rem; }
            body[data-md-color-scheme="slate"] .gdesc-inner { background: var(--md-default-bg-color);}
            body[data-md-color-scheme="slate"] .gslide-title { color: var(--md-default-fg-color);}
            body[data-md-color-scheme="slate"] .gslide-desc { color: var(--md-default-fg-color);}
            </style> <script src="assets/javascripts/glightbox.min.js"></script></head>
  
  
    
    
      
    
    
    
    
    <body dir="ltr" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="indigo">
  
    
    
      <script>var palette=__md_get("__palette");if(palette&&"object"==typeof palette.color)for(var key of Object.keys(palette.color))document.body.setAttribute("data-md-color-"+key,palette.color[key])</script>
    
    <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
    <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
    <label class="md-overlay" for="__drawer"></label>
    <div data-md-component="skip">
      
    </div>
    <div data-md-component="announce">
      
    </div>
    
    
      

  

<header class="md-header md-header--shadow md-header--lifted" data-md-component="header">
  <nav class="md-header__inner md-grid" aria-label="页眉">
    <a href="." title="SEMHAQ/NoteBook" class="md-header__button md-logo" aria-label="SEMHAQ/NoteBook" data-md-component="logo">
      
  <img src="images/logo.png" alt="logo">

    </a>
    <label class="md-header__button md-icon" for="__drawer">
      
      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
    </label>
    <div class="md-header__title" data-md-component="header-title">
      <div class="md-header__ellipsis">
        <div class="md-header__topic">
          <span class="md-ellipsis">
            SEMHAQ/NoteBook
          </span>
        </div>
        <div class="md-header__topic" data-md-component="header-topic">
          <span class="md-ellipsis">
            
              主页
            
          </span>
        </div>
      </div>
    </div>
    
      
        <form class="md-header__option" data-md-component="palette">
  
    
    
    
    <input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="indigo"  aria-label="Switch to dark mode"  type="radio" name="__palette" id="__palette_1">
    
      <label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12 20 8.69Z"/></svg>
      </label>
    
  
    
    
    
    <input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="indigo"  aria-label="Switch to light mode"  type="radio" name="__palette" id="__palette_2">
    
      <label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12c0-2.42-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12 20 8.69Z"/></svg>
      </label>
    
  
</form>
      
    
    
    
      <label class="md-header__button md-icon" for="__search">
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
      </label>
      <div class="md-search" data-md-component="search" role="dialog">
  <label class="md-search__overlay" for="__search"></label>
  <div class="md-search__inner" role="search">
    <form class="md-search__form" name="search">
      <input type="text" class="md-search__input" name="query" aria-label="搜索" placeholder="搜索" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
      <label class="md-search__icon md-icon" for="__search">
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
        
        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
      </label>
      <nav class="md-search__options" aria-label="查找">
        
        <button type="reset" class="md-search__icon md-icon" title="清空当前内容" aria-label="清空当前内容" tabindex="-1">
          
          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
        </button>
      </nav>
      
    </form>
    <div class="md-search__output">
      <div class="md-search__scrollwrap" data-md-scrollfix>
        <div class="md-search-result" data-md-component="search-result">
          <div class="md-search-result__meta">
            正在初始化搜索引擎
          </div>
          <ol class="md-search-result__list" role="presentation"></ol>
        </div>
      </div>
    </div>
  </div>
</div>
    
    
      <div class="md-header__source">
        <a href="https://github.com/SEMHAQ/NoteBook" title="前往仓库" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  </div>
  <div class="md-source__repository">
    SEMHAQ /NoteBook
  </div>
</a>
      </div>
    
  </nav>
  
    
      
<nav class="md-tabs" aria-label="标签" data-md-component="tabs">
  <div class="md-grid">
    <ul class="md-tabs__list">
      
        
  
  
    
  
  
    <li class="md-tabs__item md-tabs__item--active">
      <a href="." class="md-tabs__link">
        
  
    
  
  主页

      </a>
    </li>
  

      
        
  
  
  
    
    
      
  
  
  
    
    
      
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1605.%20%E7%BB%99%E5%AE%9A%E8%A1%8C%E5%92%8C%E5%88%97%E7%9A%84%E5%92%8C%E6%B1%82%E5%8F%AF%E8%A1%8C%E7%9F%A9%E9%98%B5/" class="md-tabs__link">
          
  
    
  
  LeetCode

        </a>
      </li>
    
  

    
  

    
  

      
        
  
  
  
    
    
      
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/Python%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%AE%80%E5%8D%95%E5%BA%94%E7%94%A8/introduction/" class="md-tabs__link">
          
  
    
  
  机器学习

        </a>
      </li>
    
  

    
  

      
        
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E6%A0%87%E9%A2%98/" class="md-tabs__link">
          
  
    
  
  MarkDown语法

        </a>
      </li>
    
  

      
        
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="Git%E8%AF%A6%E8%A7%A3/%E4%B8%8A%E4%BC%A0%E5%88%B0%E4%BB%93%E5%BA%93/" class="md-tabs__link">
          
  
    
  
  Git详解

        </a>
      </li>
    
  

      
        
  
  
  
    
    
      
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%E7%AE%80%E4%BB%8B/" class="md-tabs__link">
          
  
    
  
  数据库相关

        </a>
      </li>
    
  

    
  

      
        
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%A5%BD%E5%91%B3%E9%81%93%205%E2%9D%A4/" class="md-tabs__link">
          
  
    
  
  探店系列

        </a>
      </li>
    
  

      
        
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="blog/" class="md-tabs__link">
          
  
    
  
  Blog

        </a>
      </li>
    
  

      
        
  
  
  
    
    
      <li class="md-tabs__item">
        <a href="about/" class="md-tabs__link">
          
  
    
  
  关于

        </a>
      </li>
    
  

      
    </ul>
  </div>
</nav>
    
  
</header>
    
    <div class="md-container" data-md-component="container">
      
      


    
<html lang="en"><head>
		<!-- <title>Shadow profiles</title> -->
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
		<style>
		    body {


				min-height: 100%;
		    }

		    #info {
				color:#fff;
				position: relative;
				margin: 0 auto -2.1em;
				top: 0px;

				padding: 5px;
				z-index: 100;
				display: none;
		    }

			#canvas {
				z-index: 2000;
				border: solid 2px #000;
				position: absolute;
				top: 0;
				right: 0;
				display: none;
			}

			#mobile {
				z-index: 3000;
				text-align: center;
				margin: 0 auto;
				position: relative;
				top: 10em;
				font-size: 3em;
				font-family: georgia;
				font-weight: normal;
				display: none;
			}

			.noselect {
			  -webkit-touch-callout: none; /* iOS Safari */
				-webkit-user-select: none; /* Safari */
				 -khtml-user-select: none; /* Konqueror HTML */
				   -moz-user-select: none; /* Firefox */
					-ms-user-select: none; /* Internet Explorer/Edge */
						user-select: none; /* Non-prefixed version, currently
											  supported by Chrome and Opera */
			}



			#stats { position: absolute; top:0; left: 0 }
			#stats #fps { background: transparent !important }
			#stats #fps #fpsText { color: #444 !important }
			#stats #fps #fpsGraph { display: none }

		</style>

	 <link href="assets/stylesheets/glightbox.min.css" rel="stylesheet"/><style>
        html.glightbox-open { overflow: initial; height: 100%; }
        .gslide-title { margin-top: 0px; user-select: text; }
        .gslide-desc { color: #666; user-select: text; }
        .gslide-image img { background: white; }
        
            .gscrollbar-fixer { padding-right: 15px; }
            .gdesc-inner { font-size: 0.75rem; }
            body[data-md-color-scheme="slate"] .gdesc-inner { background: var(--md-default-bg-color);}
            body[data-md-color-scheme="slate"] .gslide-title { color: var(--md-default-fg-color);}
            body[data-md-color-scheme="slate"] .gslide-desc { color: var(--md-default-fg-color);}
            </style> <script src="assets/javascripts/glightbox.min.js"></script></head>

	<body>




		<div id="loading" style="display: none;"></div>

		<div id="mobile" class="noselect" style="top: 485px;"></div>

		<!-- <div id="info">
			<a href="https://alteredqualia.com/" target="_blank">alteredqualia</a> - shadow profiles
		</div> -->

		<canvas id="canvas" width="200" height="126" style="width: 200px; height: 126px;"></canvas>

		<script src="js/xg.min.630.js"></script>
		<script src="js/libs/stats.min.js"></script>

		<script>






			var hasWebGL1 = Detector.webgl;
			var hasWebGL2 = Detector.webgl2;

			if ( ! ( hasWebGL1 || hasWebGL2 ) ) Detector.addGetWebGLMessage();

			var isMobile = Detector.isMobile;
			//isMobile = true;

			var backend = hasWebGL2 ? "webgl2" : "webgl1";

			//

			var SCALE = 1.0;
			var MARGIN = 0;

			var BRIGHTNESS = 1.0;

			var SCREEN_WIDTH = window.innerWidth;
			var SCREEN_HEIGHT = window.innerHeight - 2 * MARGIN;

			var cameraFovInit = 25;
			var cameraFovTarget = 25;

			//

			var container, camera, scene, renderer;
			var currentMesh, currentGeometry, currentUniforms, currentSprites;

			var canvas, ctx;

			var frameCounter = 0;

			var imageInfo = [];
			var imageList = [];
			var characterFieldList = [];

			var currentImageIndex = 0;

			// camera controls

			var mouseX = 0;
			var mouseY = 0;

			var targetX = 0.0;
			var targetY = 0.0;
			var angle = 0.0;
			var height = 0.0;

			var target = new XG.Vector3();

			var windowHalfX = window.innerWidth / 2;
			var windowHalfY = window.innerHeight / 2;

			// ui

			var loadingElement = document.getElementById( "loading" );
			var mobileInfoElement = document.getElementById( "mobile" );

			var fontCounter = 0;
			var fontsToLoad = 0;

			var mobileInfoOpacity = 1;
			var mobileInfoVisible = isMobile;

			if ( mobileInfoVisible ) mobileInfoElement.style.display = "block";

			// fonts

			/*
			var sdfBebas = {'count': 95, 'chars': {32: {'yoffset': 1.5, 'width': 4, 'xadvance': 7.125, 'y': 242, 'x': 194, 'height': 4, 'xoffset': -1.5}, 33: {'yoffset': 33.688, 'width': 8, 'xadvance': 8.75, 'y': 144, 'x': 81, 'height': 36, 'xoffset': 0.438}, 34: {'yoffset': 33.688, 'width': 15, 'xadvance': 14.938, 'y': 242, 'x': 179, 'height': 13, 'xoffset': 0.313}, 35: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.875, 'y': 72, 'x': 198, 'height': 36, 'xoffset': -0.813}, 36: {'yoffset': 35.75, 'width': 19, 'xadvance': 18.188, 'y': 72, 'x': 179, 'height': 40, 'xoffset': 0.063}, 37: {'yoffset': 33.875, 'width': 29, 'xadvance': 28.875, 'y': 0, 'x': 33, 'height': 36, 'xoffset': 0.063}, 38: {'yoffset': 33.688, 'width': 20, 'xadvance': 19.0, 'y': 182, 'x': 159, 'height': 36, 'xoffset': 0.375}, 39: {'yoffset': 33.688, 'width': 8, 'xadvance': 8.25, 'y': 45, 'x': 50, 'height': 13, 'xoffset': 0.188}, 40: {'yoffset': 33.688, 'width': 12, 'xadvance': 11.563, 'y': 108, 'x': 50, 'height': 36, 'xoffset': 0.688}, 41: {'yoffset': 33.688, 'width': 12, 'xadvance': 11.563, 'y': 72, 'x': 50, 'height': 36, 'xoffset': -0.813}, 42: {'yoffset': 33.688, 'width': 22, 'xadvance': 18.188, 'y': 216, 'x': 33, 'height': 21, 'xoffset': -1.438}, 43: {'yoffset': 25.625, 'width': 19, 'xadvance': 18.25, 'y': 222, 'x': 179, 'height': 20, 'xoffset': 0.125}, 44: {'yoffset': 6.375, 'width': 8, 'xadvance': 8.5, 'y': 237, 'x': 53, 'height': 13, 'xoffset': 0.313}, 45: {'yoffset': 19.938, 'width': 13, 'xadvance': 12.438, 'y': 150, 'x': 0, 'height': 8, 'xoffset': 0.125}, 46: {'yoffset': 6.375, 'width': 8, 'xadvance': 8.5, 'y': 98, 'x': 81, 'height': 8, 'xoffset': 0.313}, 47: {'yoffset': 33.688, 'width': 21, 'xadvance': 17.5, 'y': 184, 'x': 220, 'height': 36, 'xoffset': -1.313}, 48: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.25, 'y': 216, 'x': 90, 'height': 36, 'xoffset': -0.063}, 49: {'yoffset': 33.688, 'width': 13, 'xadvance': 18.188, 'y': 72, 'x': 240, 'height': 36, 'xoffset': 3.438}, 50: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.188, 'y': 72, 'x': 62, 'height': 36, 'xoffset': 0.313}, 51: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.188, 'y': 108, 'x': 62, 'height': 36, 'xoffset': 0.063}, 52: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.188, 'y': 148, 'x': 199, 'height': 36, 'xoffset': -0.875}, 53: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.188, 'y': 144, 'x': 62, 'height': 36, 'xoffset': 0.125}, 54: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.188, 'y': 180, 'x': 62, 'height': 36, 'xoffset': 0.0}, 55: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.188, 'y': 216, 'x': 62, 'height': 36, 'xoffset': 0.0}, 56: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.188, 'y': 0, 'x': 90, 'height': 36, 'xoffset': -0.313}, 57: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.188, 'y': 0, 'x': 109, 'height': 36, 'xoffset': -0.188}, 58: {'yoffset': 23.875, 'width': 8, 'xadvance': 8.5, 'y': 72, 'x': 81, 'height': 26, 'xoffset': 0.313}, 59: {'yoffset': 23.875, 'width': 8, 'xadvance': 8.5, 'y': 108, 'x': 81, 'height': 31, 'xoffset': 0.313}, 60: {'yoffset': 24.938, 'width': 19, 'xadvance': 18.188, 'y': 40, 'x': 0, 'height': 18, 'xoffset': -0.125}, 61: {'yoffset': 23.063, 'width': 19, 'xadvance': 18.25, 'y': 118, 'x': 0, 'height': 15, 'xoffset': 0.125}, 62: {'yoffset': 24.938, 'width': 19, 'xadvance': 18.188, 'y': 58, 'x': 0, 'height': 18, 'xoffset': 0.313}, 63: {'yoffset': 34.063, 'width': 18, 'xadvance': 16.563, 'y': 0, 'x': 185, 'height': 36, 'xoffset': -0.563}, 64: {'yoffset': 35.563, 'width': 33, 'xadvance': 31.688, 'y': 0, 'x': 0, 'height': 40, 'xoffset': -0.375}, 65: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.75, 'y': 112, 'x': 199, 'height': 36, 'xoffset': -1.0}, 66: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.625, 'y': 0, 'x': 166, 'height': 36, 'xoffset': 0.313}, 67: {'yoffset': 34.063, 'width': 19, 'xadvance': 17.813, 'y': 0, 'x': 147, 'height': 36, 'xoffset': -0.063}, 68: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.75, 'y': 0, 'x': 128, 'height': 36, 'xoffset': 0.313}, 69: {'yoffset': 33.688, 'width': 17, 'xadvance': 16.938, 'y': 36, 'x': 33, 'height': 36, 'xoffset': 0.313}, 70: {'yoffset': 33.688, 'width': 17, 'xadvance': 15.813, 'y': 0, 'x': 239, 'height': 36, 'xoffset': 0.313}, 71: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.0, 'y': 180, 'x': 137, 'height': 36, 'xoffset': -0.063}, 72: {'yoffset': 33.688, 'width': 19, 'xadvance': 19.563, 'y': 144, 'x': 137, 'height': 36, 'xoffset': 0.313}, 73: {'yoffset': 33.688, 'width': 9, 'xadvance': 8.688, 'y': 180, 'x': 81, 'height': 36, 'xoffset': 0.313}, 74: {'yoffset': 33.688, 'width': 13, 'xadvance': 11.813, 'y': 112, 'x': 241, 'height': 36, 'xoffset': -1.063}, 75: {'yoffset': 33.688, 'width': 20, 'xadvance': 19.0, 'y': 110, 'x': 159, 'height': 36, 'xoffset': 0.313}, 76: {'yoffset': 33.688, 'width': 17, 'xadvance': 15.625, 'y': 108, 'x': 33, 'height': 36, 'xoffset': 0.313}, 77: {'yoffset': 33.688, 'width': 25, 'xadvance': 24.875, 'y': 36, 'x': 115, 'height': 36, 'xoffset': 0.313}, 78: {'yoffset': 33.688, 'width': 20, 'xadvance': 19.688, 'y': 150, 'x': 179, 'height': 36, 'xoffset': 0.313}, 79: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.25, 'y': 216, 'x': 137, 'height': 36, 'xoffset': -0.063}, 80: {'yoffset': 33.688, 'width': 19, 'xadvance': 17.313, 'y': 108, 'x': 115, 'height': 36, 'xoffset': 0.313}, 81: {'yoffset': 34.063, 'width': 20, 'xadvance': 18.25, 'y': 72, 'x': 159, 'height': 38, 'xoffset': -0.063}, 82: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.5, 'y': 144, 'x': 115, 'height': 36, 'xoffset': 0.313}, 83: {'yoffset': 34.063, 'width': 19, 'xadvance': 17.188, 'y': 180, 'x': 115, 'height': 36, 'xoffset': -0.438}, 84: {'yoffset': 33.688, 'width': 19, 'xadvance': 16.5, 'y': 216, 'x': 115, 'height': 36, 'xoffset': -1.063}, 85: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.375, 'y': 36, 'x': 140, 'height': 36, 'xoffset': 0.125}, 86: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.5, 'y': 184, 'x': 199, 'height': 36, 'xoffset': -1.0}, 87: {'yoffset': 33.688, 'width': 28, 'xadvance': 25.875, 'y': 36, 'x': 62, 'height': 36, 'xoffset': -0.813}, 88: {'yoffset': 33.688, 'width': 22, 'xadvance': 19.75, 'y': 72, 'x': 137, 'height': 36, 'xoffset': -0.813}, 89: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.188, 'y': 220, 'x': 199, 'height': 36, 'xoffset': -1.375}, 90: {'yoffset': 33.688, 'width': 18, 'xadvance': 17.0, 'y': 0, 'x': 221, 'height': 36, 'xoffset': -0.438}, 91: {'yoffset': 33.688, 'width': 12, 'xadvance': 11.563, 'y': 144, 'x': 50, 'height': 36, 'xoffset': 0.688}, 92: {'yoffset': 33.688, 'width': 21, 'xadvance': 17.5, 'y': 148, 'x': 220, 'height': 36, 'xoffset': -1.313}, 93: {'yoffset': 33.688, 'width': 12, 'xadvance': 11.563, 'y': 180, 'x': 50, 'height': 36, 'xoffset': -0.5}, 94: {'yoffset': 33.688, 'width': 20, 'xadvance': 18.188, 'y': 237, 'x': 33, 'height': 18, 'xoffset': -0.625}, 95: {'yoffset': 1.063, 'width': 27, 'xadvance': 23.0, 'y': 143, 'x': 0, 'height': 7, 'xoffset': -1.5}, 96: {'yoffset': 40.625, 'width': 12, 'xadvance': 11.5, 'y': 36, 'x': 50, 'height': 9, 'xoffset': -0.188}, 97: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.75, 'y': 72, 'x': 219, 'height': 36, 'xoffset': -1.0}, 98: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.625, 'y': 36, 'x': 178, 'height': 36, 'xoffset': 0.313}, 99: {'yoffset': 34.063, 'width': 19, 'xadvance': 17.813, 'y': 36, 'x': 197, 'height': 36, 'xoffset': -0.063}, 100: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.75, 'y': 36, 'x': 159, 'height': 36, 'xoffset': 0.313}, 101: {'yoffset': 33.688, 'width': 17, 'xadvance': 16.938, 'y': 72, 'x': 33, 'height': 36, 'xoffset': 0.313}, 102: {'yoffset': 33.688, 'width': 17, 'xadvance': 15.813, 'y': 144, 'x': 33, 'height': 36, 'xoffset': 0.313}, 103: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.0, 'y': 218, 'x': 159, 'height': 36, 'xoffset': -0.063}, 104: {'yoffset': 33.688, 'width': 19, 'xadvance': 19.563, 'y': 108, 'x': 137, 'height': 36, 'xoffset': 0.313}, 105: {'yoffset': 33.688, 'width': 9, 'xadvance': 8.688, 'y': 216, 'x': 81, 'height': 36, 'xoffset': 0.313}, 106: {'yoffset': 33.688, 'width': 13, 'xadvance': 11.813, 'y': 148, 'x': 241, 'height': 36, 'xoffset': -1.063}, 107: {'yoffset': 33.688, 'width': 20, 'xadvance': 19.0, 'y': 186, 'x': 179, 'height': 36, 'xoffset': 0.313}, 108: {'yoffset': 33.688, 'width': 17, 'xadvance': 15.625, 'y': 180, 'x': 33, 'height': 36, 'xoffset': 0.313}, 109: {'yoffset': 33.688, 'width': 25, 'xadvance': 24.875, 'y': 36, 'x': 90, 'height': 36, 'xoffset': 0.313}, 110: {'yoffset': 33.688, 'width': 20, 'xadvance': 19.688, 'y': 146, 'x': 159, 'height': 36, 'xoffset': 0.313}, 111: {'yoffset': 34.063, 'width': 19, 'xadvance': 18.25, 'y': 180, 'x': 90, 'height': 36, 'xoffset': -0.063}, 112: {'yoffset': 33.688, 'width': 19, 'xadvance': 17.313, 'y': 144, 'x': 90, 'height': 36, 'xoffset': 0.313}, 113: {'yoffset': 34.063, 'width': 20, 'xadvance': 18.25, 'y': 112, 'x': 179, 'height': 38, 'xoffset': -0.063}, 114: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.5, 'y': 108, 'x': 90, 'height': 36, 'xoffset': 0.313}, 115: {'yoffset': 34.063, 'width': 19, 'xadvance': 17.188, 'y': 72, 'x': 90, 'height': 36, 'xoffset': -0.438}, 116: {'yoffset': 33.688, 'width': 19, 'xadvance': 16.5, 'y': 36, 'x': 235, 'height': 36, 'xoffset': -1.063}, 117: {'yoffset': 33.688, 'width': 19, 'xadvance': 18.375, 'y': 36, 'x': 216, 'height': 36, 'xoffset': 0.125}, 118: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.5, 'y': 112, 'x': 220, 'height': 36, 'xoffset': -1.0}, 119: {'yoffset': 33.688, 'width': 28, 'xadvance': 25.875, 'y': 0, 'x': 62, 'height': 36, 'xoffset': -0.813}, 120: {'yoffset': 33.688, 'width': 22, 'xadvance': 19.75, 'y': 72, 'x': 115, 'height': 36, 'xoffset': -0.813}, 121: {'yoffset': 33.688, 'width': 21, 'xadvance': 18.188, 'y': 220, 'x': 220, 'height': 36, 'xoffset': -1.375}, 122: {'yoffset': 33.688, 'width': 18, 'xadvance': 17.0, 'y': 0, 'x': 203, 'height': 36, 'xoffset': -0.438}, 123: {'yoffset': 33.688, 'width': 14, 'xadvance': 11.813, 'y': 220, 'x': 241, 'height': 36, 'xoffset': -1.0}, 124: {'yoffset': 36.688, 'width': 8, 'xadvance': 23.0, 'y': 76, 'x': 0, 'height': 42, 'xoffset': 8.188}, 125: {'yoffset': 33.688, 'width': 14, 'xadvance': 11.813, 'y': 184, 'x': 241, 'height': 36, 'xoffset': -0.75}, 126: {'yoffset': 20.938, 'width': 21, 'xadvance': 18.188, 'y': 133, 'x': 0, 'height': 10, 'xoffset': -1.188}}, 'base': 42, 'face': 'Bebas Neue'};
			sdfBebas.img = "textures/sprites/fonts/Bebas Neue.sdf.png";
			sdfBebas.width = 256;
			sdfBebas.height = 256;

			var sdfFiraMediumItalic = {'count': 97, 'chars': {0: {'yoffset': 1.5, 'width': 4, 'xadvance': 0.0, 'y': 238, 'x': 223, 'height': 4, 'xoffset': -1.5}, 13: {'yoffset': 1.5, 'width': 4, 'xadvance': 9.25, 'y': 252, 'x': 250, 'height': 4, 'xoffset': -1.5}, 32: {'yoffset': 1.5, 'width': 4, 'xadvance': 9.25, 'y': 252, 'x': 246, 'height': 4, 'xoffset': -1.5}, 33: {'yoffset': 27.063, 'width': 12, 'xadvance': 9.5, 'y': 0, 'x': 186, 'height': 30, 'xoffset': -0.688}, 34: {'yoffset': 27.063, 'width': 15, 'xadvance': 18.0, 'y': 15, 'x': 210, 'height': 14, 'xoffset': 3.0}, 35: {'yoffset': 26.438, 'width': 24, 'xadvance': 19.5, 'y': 125, 'x': 48, 'height': 28, 'xoffset': -1.875}, 36: {'yoffset': 32.125, 'width': 24, 'xadvance': 19.938, 'y': 65, 'x': 24, 'height': 40, 'xoffset': -1.625}, 37: {'yoffset': 27.938, 'width': 30, 'xadvance': 31.813, 'y': 94, 'x': 48, 'height': 31, 'xoffset': 1.5}, 38: {'yoffset': 24.75, 'width': 36, 'xadvance': 33.25, 'y': 38, 'x': 0, 'height': 27, 'xoffset': -0.25}, 39: {'yoffset': 27.063, 'width': 8, 'xadvance': 10.875, 'y': 238, 'x': 246, 'height': 14, 'xoffset': 3.0}, 40: {'yoffset': 33.0, 'width': 16, 'xadvance': 12.0, 'y': 105, 'x': 24, 'height': 41, 'xoffset': -0.5}, 41: {'yoffset': 33.0, 'width': 16, 'xadvance': 12.0, 'y': 211, 'x': 48, 'height': 41, 'xoffset': -2.188}, 42: {'yoffset': 28.938, 'width': 19, 'xadvance': 16.375, 'y': 238, 'x': 227, 'height': 18, 'xoffset': 0.438}, 43: {'yoffset': 20.688, 'width': 19, 'xadvance': 18.875, 'y': 237, 'x': 135, 'height': 19, 'xoffset': 0.25}, 44: {'yoffset': 6.938, 'width': 11, 'xadvance': 9.5, 'y': 15, 'x': 225, 'height': 15, 'xoffset': -2.25}, 45: {'yoffset': 14.938, 'width': 15, 'xadvance': 15.063, 'y': 247, 'x': 181, 'height': 7, 'xoffset': 0.25}, 46: {'yoffset': 6.938, 'width': 10, 'xadvance': 9.5, 'y': 243, 'x': 92, 'height': 10, 'xoffset': -0.875}, 47: {'yoffset': 31.875, 'width': 22, 'xadvance': 19.25, 'y': 94, 'x': 135, 'height': 38, 'xoffset': -1.0}, 48: {'yoffset': 26.875, 'width': 22, 'xadvance': 21.25, 'y': 65, 'x': 81, 'height': 29, 'xoffset': 0.188}, 49: {'yoffset': 26.375, 'width': 16, 'xadvance': 15.75, 'y': 0, 'x': 74, 'height': 28, 'xoffset': 0.0}, 50: {'yoffset': 26.875, 'width': 21, 'xadvance': 19.0, 'y': 65, 'x': 190, 'height': 29, 'xoffset': -1.438}, 51: {'yoffset': 26.813, 'width': 22, 'xadvance': 18.938, 'y': 65, 'x': 147, 'height': 29, 'xoffset': -2.188}, 52: {'yoffset': 27.063, 'width': 22, 'xadvance': 20.188, 'y': 65, 'x': 125, 'height': 29, 'xoffset': -0.938}, 53: {'yoffset': 26.375, 'width': 23, 'xadvance': 19.688, 'y': 182, 'x': 48, 'height': 29, 'xoffset': -1.688}, 54: {'yoffset': 26.813, 'width': 21, 'xadvance': 20.375, 'y': 65, 'x': 211, 'height': 29, 'xoffset': 0.125}, 55: {'yoffset': 26.438, 'width': 20, 'xadvance': 16.875, 'y': 65, 'x': 232, 'height': 29, 'xoffset': 0.188}, 56: {'yoffset': 26.813, 'width': 22, 'xadvance': 21.125, 'y': 65, 'x': 103, 'height': 29, 'xoffset': -0.688}, 57: {'yoffset': 26.813, 'width': 21, 'xadvance': 20.375, 'y': 222, 'x': 24, 'height': 30, 'xoffset': 0.438}, 58: {'yoffset': 20.188, 'width': 11, 'xadvance': 9.5, 'y': 185, 'x': 243, 'height': 23, 'xoffset': -0.875}, 59: {'yoffset': 20.25, 'width': 13, 'xadvance': 9.5, 'y': 0, 'x': 173, 'height': 29, 'xoffset': -2.25}, 60: {'yoffset': 22.563, 'width': 20, 'xadvance': 18.875, 'y': 0, 'x': 121, 'height': 21, 'xoffset': 0.25}, 61: {'yoffset': 18.75, 'width': 20, 'xadvance': 18.875, 'y': 0, 'x': 210, 'height': 15, 'xoffset': 0.688}, 62: {'yoffset': 22.563, 'width': 20, 'xadvance': 18.875, 'y': 0, 'x': 141, 'height': 21, 'xoffset': -0.563}, 63: {'yoffset': 27.625, 'width': 19, 'xadvance': 18.625, 'y': 185, 'x': 0, 'height': 30, 'xoffset': 0.938}, 64: {'yoffset': 27.625, 'width': 38, 'xadvance': 37.75, 'y': 0, 'x': 0, 'height': 38, 'xoffset': 0.188}, 65: {'yoffset': 27.125, 'width': 26, 'xadvance': 21.563, 'y': 209, 'x': 201, 'height': 29, 'xoffset': -3.125}, 66: {'yoffset': 27.063, 'width': 23, 'xadvance': 22.875, 'y': 123, 'x': 233, 'height': 29, 'xoffset': 0.188}, 67: {'yoffset': 27.625, 'width': 24, 'xadvance': 21.063, 'y': 187, 'x': 109, 'height': 30, 'xoffset': 0.25}, 68: {'yoffset': 27.063, 'width': 25, 'xadvance': 24.188, 'y': 123, 'x': 183, 'height': 29, 'xoffset': 0.188}, 69: {'yoffset': 27.063, 'width': 22, 'xadvance': 19.5, 'y': 94, 'x': 234, 'height': 29, 'xoffset': 0.188}, 70: {'yoffset': 27.063, 'width': 21, 'xadvance': 18.188, 'y': 65, 'x': 169, 'height': 29, 'xoffset': 0.188}, 71: {'yoffset': 27.625, 'width': 25, 'xadvance': 23.625, 'y': 153, 'x': 230, 'height': 30, 'xoffset': 0.25}, 72: {'yoffset': 27.063, 'width': 25, 'xadvance': 24.625, 'y': 94, 'x': 184, 'height': 29, 'xoffset': 0.188}, 73: {'yoffset': 27.063, 'width': 12, 'xadvance': 10.813, 'y': 0, 'x': 198, 'height': 29, 'xoffset': 0.188}, 74: {'yoffset': 27.063, 'width': 16, 'xadvance': 11.0, 'y': 215, 'x': 0, 'height': 35, 'xoffset': -3.75}, 75: {'yoffset': 27.063, 'width': 26, 'xadvance': 22.438, 'y': 209, 'x': 227, 'height': 29, 'xoffset': 0.188}, 76: {'yoffset': 27.063, 'width': 19, 'xadvance': 18.563, 'y': 0, 'x': 38, 'height': 29, 'xoffset': 0.188}, 77: {'yoffset': 27.063, 'width': 31, 'xadvance': 29.188, 'y': 94, 'x': 78, 'height': 29, 'xoffset': -1.25}, 78: {'yoffset': 27.063, 'width': 25, 'xadvance': 24.75, 'y': 123, 'x': 208, 'height': 29, 'xoffset': 0.188}, 79: {'yoffset': 27.625, 'width': 26, 'xadvance': 25.5, 'y': 123, 'x': 157, 'height': 30, 'xoffset': 0.25}, 80: {'yoffset': 27.125, 'width': 24, 'xadvance': 21.875, 'y': 123, 'x': 78, 'height': 29, 'xoffset': 0.188}, 81: {'yoffset': 27.625, 'width': 26, 'xadvance': 25.5, 'y': 94, 'x': 109, 'height': 34, 'xoffset': 0.25}, 82: {'yoffset': 27.125, 'width': 24, 'xadvance': 22.375, 'y': 217, 'x': 109, 'height': 29, 'xoffset': 0.188}, 83: {'yoffset': 27.625, 'width': 24, 'xadvance': 20.313, 'y': 157, 'x': 109, 'height': 30, 'xoffset': -1.75}, 84: {'yoffset': 27.063, 'width': 23, 'xadvance': 19.375, 'y': 153, 'x': 48, 'height': 29, 'xoffset': 0.125}, 85: {'yoffset': 27.063, 'width': 25, 'xadvance': 24.25, 'y': 153, 'x': 205, 'height': 30, 'xoffset': 0.75}, 86: {'yoffset': 27.063, 'width': 25, 'xadvance': 21.625, 'y': 94, 'x': 209, 'height': 29, 'xoffset': 0.438}, 87: {'yoffset': 27.125, 'width': 33, 'xadvance': 30.875, 'y': 65, 'x': 48, 'height': 29, 'xoffset': 0.813}, 88: {'yoffset': 27.063, 'width': 27, 'xadvance': 21.063, 'y': 94, 'x': 157, 'height': 29, 'xoffset': -3.0}, 89: {'yoffset': 27.063, 'width': 25, 'xadvance': 21.0, 'y': 128, 'x': 109, 'height': 29, 'xoffset': 0.125}, 90: {'yoffset': 27.063, 'width': 24, 'xadvance': 19.438, 'y': 152, 'x': 78, 'height': 29, 'xoffset': -2.125}, 91: {'yoffset': 31.813, 'width': 17, 'xadvance': 12.0, 'y': 146, 'x': 24, 'height': 38, 'xoffset': -1.625}, 92: {'yoffset': 31.875, 'width': 20, 'xadvance': 19.375, 'y': 209, 'x': 181, 'height': 38, 'xoffset': -0.438}, 93: {'yoffset': 31.875, 'width': 17, 'xadvance': 12.0, 'y': 184, 'x': 24, 'height': 38, 'xoffset': -1.938}, 94: {'yoffset': 32.688, 'width': 22, 'xadvance': 19.875, 'y': 238, 'x': 201, 'height': 15, 'xoffset': 0.5}, 95: {'yoffset': -0.563, 'width': 22, 'xadvance': 19.25, 'y': 248, 'x': 157, 'height': 7, 'xoffset': -3.313}, 96: {'yoffset': 31.875, 'width': 14, 'xadvance': 12.125, 'y': 243, 'x': 78, 'height': 11, 'xoffset': -0.438}, 97: {'yoffset': 21.625, 'width': 22, 'xadvance': 21.375, 'y': 38, 'x': 60, 'height': 24, 'xoffset': -0.375}, 98: {'yoffset': 29.438, 'width': 22, 'xadvance': 21.75, 'y': 132, 'x': 135, 'height': 32, 'xoffset': -0.125}, 99: {'yoffset': 21.625, 'width': 20, 'xadvance': 17.25, 'y': 38, 'x': 211, 'height': 24, 'xoffset': -0.375}, 100: {'yoffset': 29.438, 'width': 24, 'xadvance': 21.688, 'y': 153, 'x': 181, 'height': 32, 'xoffset': -0.375}, 101: {'yoffset': 21.625, 'width': 21, 'xadvance': 19.25, 'y': 38, 'x': 169, 'height': 24, 'xoffset': -0.375}, 102: {'yoffset': 29.5, 'width': 24, 'xadvance': 12.375, 'y': 65, 'x': 0, 'height': 40, 'xoffset': -4.188}, 103: {'yoffset': 21.688, 'width': 23, 'xadvance': 21.625, 'y': 216, 'x': 157, 'height': 32, 'xoffset': -1.125}, 104: {'yoffset': 29.438, 'width': 22, 'xadvance': 21.25, 'y': 212, 'x': 78, 'height': 31, 'xoffset': -0.25}, 105: {'yoffset': 30.938, 'width': 13, 'xadvance': 10.0, 'y': 0, 'x': 108, 'height': 33, 'xoffset': -0.375}, 106: {'yoffset': 30.938, 'width': 17, 'xadvance': 10.0, 'y': 196, 'x': 135, 'height': 41, 'xoffset': -4.938}, 107: {'yoffset': 29.438, 'width': 22, 'xadvance': 20.813, 'y': 181, 'x': 78, 'height': 31, 'xoffset': -0.25}, 108: {'yoffset': 29.438, 'width': 12, 'xadvance': 10.438, 'y': 0, 'x': 161, 'height': 32, 'xoffset': 0.0}, 109: {'yoffset': 21.625, 'width': 32, 'xadvance': 31.375, 'y': 185, 'x': 181, 'height': 24, 'xoffset': -0.25}, 110: {'yoffset': 21.625, 'width': 22, 'xadvance': 21.25, 'y': 38, 'x': 104, 'height': 24, 'xoffset': -0.25}, 111: {'yoffset': 21.625, 'width': 22, 'xadvance': 21.313, 'y': 38, 'x': 82, 'height': 24, 'xoffset': -0.375}, 112: {'yoffset': 21.625, 'width': 24, 'xadvance': 21.75, 'y': 153, 'x': 157, 'height': 32, 'xoffset': -1.375}, 113: {'yoffset': 21.625, 'width': 22, 'xadvance': 21.563, 'y': 164, 'x': 135, 'height': 32, 'xoffset': -0.375}, 114: {'yoffset': 21.625, 'width': 18, 'xadvance': 14.313, 'y': 0, 'x': 90, 'height': 24, 'xoffset': -0.25}, 115: {'yoffset': 21.563, 'width': 20, 'xadvance': 17.563, 'y': 38, 'x': 231, 'height': 24, 'xoffset': -1.938}, 116: {'yoffset': 26.0, 'width': 17, 'xadvance': 13.75, 'y': 0, 'x': 57, 'height': 29, 'xoffset': -0.563}, 117: {'yoffset': 21.063, 'width': 21, 'xadvance': 21.063, 'y': 38, 'x': 148, 'height': 24, 'xoffset': 0.313}, 118: {'yoffset': 21.125, 'width': 22, 'xadvance': 18.375, 'y': 38, 'x': 126, 'height': 23, 'xoffset': -0.375}, 119: {'yoffset': 21.125, 'width': 30, 'xadvance': 27.125, 'y': 185, 'x': 213, 'height': 23, 'xoffset': 0.0}, 120: {'yoffset': 21.063, 'width': 24, 'xadvance': 18.0, 'y': 38, 'x': 36, 'height': 23, 'xoffset': -3.438}, 121: {'yoffset': 21.125, 'width': 24, 'xadvance': 18.313, 'y': 185, 'x': 157, 'height': 31, 'xoffset': -2.25}, 122: {'yoffset': 21.063, 'width': 21, 'xadvance': 16.375, 'y': 38, 'x': 190, 'height': 23, 'xoffset': -2.5}, 123: {'yoffset': 32.438, 'width': 16, 'xadvance': 12.0, 'y': 145, 'x': 0, 'height': 40, 'xoffset': -0.813}, 124: {'yoffset': 31.375, 'width': 12, 'xadvance': 14.375, 'y': 211, 'x': 64, 'height': 37, 'xoffset': 1.688}, 125: {'yoffset': 32.438, 'width': 16, 'xadvance': 12.0, 'y': 105, 'x': 0, 'height': 40, 'xoffset': -2.313}, 126: {'yoffset': 16.125, 'width': 21, 'xadvance': 18.875, 'y': 246, 'x': 109, 'height': 9, 'xoffset': -0.438}}, 'base': 41, 'face': 'Fira Sans'};
			sdfFiraMediumItalic.img = "textures/sprites/fonts/FiraSans-MediumItalic.sdf.png";
			sdfFiraMediumItalic.width = 256;
			sdfFiraMediumItalic.height = 256;

			var sdfFiraRegular = {'count': 97, 'chars': {0: {'yoffset': 1.5, 'width': 4, 'xadvance': 0.0, 'y': 238, 'x': 252, 'height': 4, 'xoffset': -1.5}, 13: {'yoffset': 1.5, 'width': 4, 'xadvance': 10.875, 'y': 234, 'x': 252, 'height': 4, 'xoffset': -1.5}, 32: {'yoffset': 1.5, 'width': 4, 'xadvance': 10.875, 'y': 230, 'x': 252, 'height': 4, 'xoffset': -1.5}, 33: {'yoffset': 29.75, 'width': 9, 'xadvance': 10.813, 'y': 32, 'x': 243, 'height': 32, 'xoffset': 1.063}, 34: {'yoffset': 29.75, 'width': 15, 'xadvance': 18.688, 'y': 242, 'x': 15, 'height': 14, 'xoffset': 2.125}, 35: {'yoffset': 29.0, 'width': 24, 'xadvance': 20.5, 'y': 164, 'x': 124, 'height': 31, 'xoffset': -1.375}, 36: {'yoffset': 35.375, 'width': 23, 'xadvance': 20.563, 'y': 32, 'x': 101, 'height': 44, 'xoffset': -1.0}, 37: {'yoffset': 30.625, 'width': 32, 'xadvance': 34.813, 'y': 32, 'x': 40, 'height': 34, 'xoffset': 1.563}, 38: {'yoffset': 30.25, 'width': 30, 'xadvance': 31.875, 'y': 64, 'x': 124, 'height': 33, 'xoffset': 2.25}, 39: {'yoffset': 29.75, 'width': 8, 'xadvance': 11.25, 'y': 69, 'x': 93, 'height': 14, 'xoffset': 2.125}, 40: {'yoffset': 36.125, 'width': 14, 'xadvance': 13.313, 'y': 162, 'x': 40, 'height': 44, 'xoffset': 0.125}, 41: {'yoffset': 36.125, 'width': 14, 'xadvance': 13.313, 'y': 162, 'x': 54, 'height': 44, 'xoffset': 0.0}, 42: {'yoffset': 31.813, 'width': 20, 'xadvance': 18.063, 'y': 223, 'x': 15, 'height': 19, 'xoffset': -0.563}, 43: {'yoffset': 21.938, 'width': 19, 'xadvance': 20.5, 'y': 151, 'x': 19, 'height': 19, 'xoffset': 1.063}, 44: {'yoffset': 6.688, 'width': 10, 'xadvance': 10.813, 'y': 128, 'x': 59, 'height': 16, 'xoffset': 0.563}, 45: {'yoffset': 15.938, 'width': 15, 'xadvance': 16.625, 'y': 248, 'x': 72, 'height': 7, 'xoffset': 1.0}, 46: {'yoffset': 6.688, 'width': 9, 'xadvance': 10.813, 'y': 122, 'x': 196, 'height': 9, 'xoffset': 1.063}, 47: {'yoffset': 34.75, 'width': 16, 'xadvance': 21.313, 'y': 166, 'x': 72, 'height': 41, 'xoffset': 2.75}, 48: {'yoffset': 29.375, 'width': 22, 'xadvance': 23.0, 'y': 32, 'x': 177, 'height': 32, 'xoffset': 0.813}, 49: {'yoffset': 28.938, 'width': 15, 'xadvance': 16.375, 'y': 176, 'x': 0, 'height': 31, 'xoffset': -0.75}, 50: {'yoffset': 29.375, 'width': 21, 'xadvance': 20.813, 'y': 66, 'x': 40, 'height': 31, 'xoffset': -0.438}, 51: {'yoffset': 29.375, 'width': 21, 'xadvance': 20.563, 'y': 101, 'x': 72, 'height': 32, 'xoffset': -0.938}, 52: {'yoffset': 29.438, 'width': 22, 'xadvance': 21.5, 'y': 179, 'x': 101, 'height': 31, 'xoffset': 0.0}, 53: {'yoffset': 28.938, 'width': 21, 'xadvance': 21.063, 'y': 97, 'x': 40, 'height': 31, 'xoffset': -0.188}, 54: {'yoffset': 29.375, 'width': 21, 'xadvance': 21.938, 'y': 69, 'x': 72, 'height': 32, 'xoffset': 0.813}, 55: {'yoffset': 28.938, 'width': 19, 'xadvance': 18.125, 'y': 0, 'x': 133, 'height': 31, 'xoffset': -0.5}, 56: {'yoffset': 29.375, 'width': 22, 'xadvance': 22.75, 'y': 32, 'x': 199, 'height': 32, 'xoffset': 0.438}, 57: {'yoffset': 29.375, 'width': 21, 'xadvance': 21.875, 'y': 133, 'x': 235, 'height': 32, 'xoffset': 0.438}, 58: {'yoffset': 22.0, 'width': 9, 'xadvance': 10.813, 'y': 133, 'x': 92, 'height': 25, 'xoffset': 1.063}, 59: {'yoffset': 22.0, 'width': 10, 'xadvance': 10.813, 'y': 64, 'x': 246, 'height': 31, 'xoffset': 0.563}, 60: {'yoffset': 24.125, 'width': 20, 'xadvance': 20.5, 'y': 176, 'x': 15, 'height': 21, 'xoffset': 1.063}, 61: {'yoffset': 19.813, 'width': 19, 'xadvance': 20.563, 'y': 125, 'x': 12, 'height': 15, 'xoffset': 1.063}, 62: {'yoffset': 24.125, 'width': 20, 'xadvance': 20.5, 'y': 232, 'x': 151, 'height': 21, 'xoffset': 0.313}, 63: {'yoffset': 30.25, 'width': 20, 'xadvance': 20.813, 'y': 133, 'x': 72, 'height': 33, 'xoffset': 0.188}, 64: {'yoffset': 30.25, 'width': 40, 'xadvance': 41.813, 'y': 0, 'x': 0, 'height': 41, 'xoffset': 1.375}, 65: {'yoffset': 29.813, 'width': 27, 'xadvance': 23.75, 'y': 133, 'x': 151, 'height': 32, 'xoffset': -1.313}, 66: {'yoffset': 29.75, 'width': 23, 'xadvance': 25.688, 'y': 64, 'x': 223, 'height': 32, 'xoffset': 2.813}, 67: {'yoffset': 30.25, 'width': 24, 'xadvance': 23.438, 'y': 197, 'x': 229, 'height': 33, 'xoffset': 1.063}, 68: {'yoffset': 29.813, 'width': 24, 'xadvance': 26.938, 'y': 97, 'x': 207, 'height': 32, 'xoffset': 2.813}, 69: {'yoffset': 29.813, 'width': 19, 'xadvance': 22.125, 'y': 0, 'x': 114, 'height': 32, 'xoffset': 2.813}, 70: {'yoffset': 29.813, 'width': 19, 'xadvance': 20.375, 'y': 0, 'x': 95, 'height': 32, 'xoffset': 2.813}, 71: {'yoffset': 30.25, 'width': 25, 'xadvance': 26.188, 'y': 197, 'x': 204, 'height': 33, 'xoffset': 1.063}, 72: {'yoffset': 29.813, 'width': 23, 'xadvance': 27.875, 'y': 64, 'x': 154, 'height': 32, 'xoffset': 2.813}, 73: {'yoffset': 29.813, 'width': 7, 'xadvance': 12.563, 'y': 101, 'x': 93, 'height': 32, 'xoffset': 2.813}, 74: {'yoffset': 29.813, 'width': 12, 'xadvance': 12.625, 'y': 166, 'x': 88, 'height': 38, 'xoffset': -1.313}, 75: {'yoffset': 29.813, 'width': 24, 'xadvance': 24.313, 'y': 165, 'x': 230, 'height': 32, 'xoffset': 2.813}, 76: {'yoffset': 29.813, 'width': 19, 'xadvance': 20.625, 'y': 0, 'x': 76, 'height': 32, 'xoffset': 2.813}, 77: {'yoffset': 29.813, 'width': 31, 'xadvance': 32.625, 'y': 32, 'x': 124, 'height': 32, 'xoffset': 1.0}, 78: {'yoffset': 29.813, 'width': 23, 'xadvance': 28.25, 'y': 195, 'x': 124, 'height': 32, 'xoffset': 2.813}, 79: {'yoffset': 30.25, 'width': 27, 'xadvance': 28.563, 'y': 97, 'x': 124, 'height': 33, 'xoffset': 1.063}, 80: {'yoffset': 29.813, 'width': 22, 'xadvance': 24.0, 'y': 32, 'x': 221, 'height': 32, 'xoffset': 2.813}, 81: {'yoffset': 30.25, 'width': 29, 'xadvance': 28.563, 'y': 32, 'x': 72, 'height': 37, 'xoffset': 1.063}, 82: {'yoffset': 29.813, 'width': 23, 'xadvance': 24.875, 'y': 64, 'x': 177, 'height': 32, 'xoffset': 2.813}, 83: {'yoffset': 30.25, 'width': 23, 'xadvance': 22.375, 'y': 97, 'x': 231, 'height': 33, 'xoffset': -0.438}, 84: {'yoffset': 29.75, 'width': 24, 'xadvance': 21.125, 'y': 200, 'x': 151, 'height': 32, 'xoffset': -0.875}, 85: {'yoffset': 29.813, 'width': 23, 'xadvance': 27.5, 'y': 64, 'x': 200, 'height': 32, 'xoffset': 2.375}, 86: {'yoffset': 29.813, 'width': 26, 'xadvance': 24.0, 'y': 133, 'x': 178, 'height': 32, 'xoffset': -0.938}, 87: {'yoffset': 29.813, 'width': 36, 'xadvance': 34.0, 'y': 0, 'x': 40, 'height': 32, 'xoffset': -0.5}, 88: {'yoffset': 29.813, 'width': 26, 'xadvance': 22.75, 'y': 165, 'x': 178, 'height': 32, 'xoffset': -1.313}, 89: {'yoffset': 29.813, 'width': 26, 'xadvance': 22.563, 'y': 165, 'x': 204, 'height': 32, 'xoffset': -1.313}, 90: {'yoffset': 29.813, 'width': 22, 'xadvance': 21.375, 'y': 32, 'x': 155, 'height': 32, 'xoffset': -0.25}, 91: {'yoffset': 35.0, 'width': 12, 'xadvance': 13.313, 'y': 109, 'x': 0, 'height': 42, 'xoffset': 1.25}, 92: {'yoffset': 34.75, 'width': 16, 'xadvance': 21.313, 'y': 207, 'x': 72, 'height': 41, 'xoffset': 2.75}, 93: {'yoffset': 35.0, 'width': 12, 'xadvance': 13.313, 'y': 67, 'x': 0, 'height': 42, 'xoffset': 0.563}, 94: {'yoffset': 36.0, 'width': 22, 'xadvance': 21.313, 'y': 109, 'x': 12, 'height': 16, 'xoffset': -0.313}, 95: {'yoffset': -1.063, 'width': 23, 'xadvance': 21.313, 'y': 244, 'x': 101, 'height': 7, 'xoffset': -0.813}, 96: {'yoffset': 34.375, 'width': 13, 'xadvance': 12.188, 'y': 144, 'x': 59, 'height': 10, 'xoffset': -0.313}, 97: {'yoffset': 23.625, 'width': 22, 'xadvance': 22.375, 'y': 227, 'x': 124, 'height': 26, 'xoffset': 0.375}, 98: {'yoffset': 32.313, 'width': 21, 'xadvance': 24.25, 'y': 76, 'x': 101, 'height': 35, 'xoffset': 2.5}, 99: {'yoffset': 23.625, 'width': 20, 'xadvance': 19.5, 'y': 0, 'x': 211, 'height': 26, 'xoffset': 0.813}, 100: {'yoffset': 32.313, 'width': 22, 'xadvance': 24.375, 'y': 165, 'x': 151, 'height': 35, 'xoffset': 0.813}, 101: {'yoffset': 23.625, 'width': 21, 'xadvance': 22.375, 'y': 0, 'x': 170, 'height': 26, 'xoffset': 0.813}, 102: {'yoffset': 32.313, 'width': 19, 'xadvance': 13.75, 'y': 128, 'x': 40, 'height': 34, 'xoffset': -0.625}, 103: {'yoffset': 25.563, 'width': 24, 'xadvance': 21.5, 'y': 97, 'x': 151, 'height': 36, 'xoffset': -0.25}, 104: {'yoffset': 32.25, 'width': 20, 'xadvance': 24.125, 'y': 210, 'x': 101, 'height': 34, 'xoffset': 2.5}, 105: {'yoffset': 33.188, 'width': 9, 'xadvance': 11.438, 'y': 67, 'x': 12, 'height': 35, 'xoffset': 1.563}, 106: {'yoffset': 33.188, 'width': 12, 'xadvance': 11.438, 'y': 207, 'x': 88, 'height': 44, 'xoffset': -1.938}, 107: {'yoffset': 32.313, 'width': 21, 'xadvance': 21.063, 'y': 145, 'x': 101, 'height': 34, 'xoffset': 2.5}, 108: {'yoffset': 32.313, 'width': 11, 'xadvance': 11.875, 'y': 207, 'x': 0, 'height': 35, 'xoffset': 2.125}, 109: {'yoffset': 23.625, 'width': 31, 'xadvance': 35.375, 'y': 133, 'x': 204, 'height': 26, 'xoffset': 2.5}, 110: {'yoffset': 23.625, 'width': 20, 'xadvance': 24.125, 'y': 0, 'x': 191, 'height': 26, 'xoffset': 2.5}, 111: {'yoffset': 23.625, 'width': 23, 'xadvance': 23.875, 'y': 230, 'x': 229, 'height': 26, 'xoffset': 0.813}, 112: {'yoffset': 23.625, 'width': 21, 'xadvance': 24.25, 'y': 111, 'x': 101, 'height': 34, 'xoffset': 2.5}, 113: {'yoffset': 23.625, 'width': 22, 'xadvance': 24.375, 'y': 130, 'x': 124, 'height': 34, 'xoffset': 0.813}, 114: {'yoffset': 23.625, 'width': 15, 'xadvance': 15.688, 'y': 197, 'x': 15, 'height': 26, 'xoffset': 2.5}, 115: {'yoffset': 23.625, 'width': 20, 'xadvance': 19.438, 'y': 0, 'x': 231, 'height': 26, 'xoffset': -0.5}, 116: {'yoffset': 28.5, 'width': 18, 'xadvance': 15.063, 'y': 0, 'x': 152, 'height': 31, 'xoffset': -0.625}, 117: {'yoffset': 23.125, 'width': 20, 'xadvance': 23.813, 'y': 41, 'x': 0, 'height': 26, 'xoffset': 2.313}, 118: {'yoffset': 23.125, 'width': 23, 'xadvance': 20.25, 'y': 230, 'x': 204, 'height': 25, 'xoffset': -1.063}, 119: {'yoffset': 23.125, 'width': 32, 'xadvance': 29.875, 'y': 97, 'x': 175, 'height': 25, 'xoffset': -0.688}, 120: {'yoffset': 23.125, 'width': 23, 'xadvance': 19.625, 'y': 231, 'x': 178, 'height': 25, 'xoffset': -1.438}, 121: {'yoffset': 23.125, 'width': 23, 'xadvance': 20.125, 'y': 197, 'x': 178, 'height': 34, 'xoffset': -1.063}, 122: {'yoffset': 23.125, 'width': 19, 'xadvance': 18.063, 'y': 151, 'x': 0, 'height': 25, 'xoffset': -0.438}, 123: {'yoffset': 35.875, 'width': 14, 'xadvance': 13.313, 'y': 206, 'x': 54, 'height': 43, 'xoffset': -0.438}, 124: {'yoffset': 34.625, 'width': 7, 'xadvance': 16.5, 'y': 67, 'x': 21, 'height': 41, 'xoffset': 5.063}, 125: {'yoffset': 35.875, 'width': 14, 'xadvance': 13.313, 'y': 206, 'x': 40, 'height': 43, 'xoffset': 0.188}, 126: {'yoffset': 17.063, 'width': 21, 'xadvance': 20.5, 'y': 122, 'x': 175, 'height': 9, 'xoffset': 0.125}}, 'base': 44, 'face': 'Fira Sans'};
			sdfFiraRegular.img = "textures/sprites/fonts/FiraSans-Regular.sdf.png";
			sdfFiraRegular.width = 256;
			sdfFiraRegular.height = 256;
			*/

			var sdfGeorgia = {'count': 95, 'chars': {32: {'yoffset': 1.5, 'width': 4, 'xadvance': 8.688, 'y': 251, 'x': 229, 'height': 4, 'xoffset': -1.5}, 33: {'yoffset': 27.063, 'width': 8, 'xadvance': 11.875, 'y': 174, 'x': 137, 'height': 29, 'xoffset': 2.125}, 34: {'yoffset': 28.375, 'width': 14, 'xadvance': 14.813, 'y': 236, 'x': 31, 'height': 13, 'xoffset': 0.563}, 35: {'yoffset': 23.125, 'width': 21, 'xadvance': 23.125, 'y': 230, 'x': 235, 'height': 25, 'xoffset': 1.188}, 36: {'yoffset': 28.25, 'width': 20, 'xadvance': 22.0, 'y': 174, 'x': 117, 'height': 36, 'xoffset': 1.25}, 37: {'yoffset': 27.0, 'width': 29, 'xadvance': 29.5, 'y': 57, 'x': 59, 'height': 30, 'xoffset': 0.438}, 38: {'yoffset': 27.0, 'width': 28, 'xadvance': 25.625, 'y': 144, 'x': 117, 'height': 30, 'xoffset': -0.188}, 39: {'yoffset': 28.375, 'width': 7, 'xadvance': 7.688, 'y': 230, 'x': 195, 'height': 13, 'xoffset': 0.375}, 40: {'yoffset': 28.438, 'width': 14, 'xadvance': 13.5, 'y': 167, 'x': 45, 'height': 36, 'xoffset': 0.563}, 41: {'yoffset': 28.438, 'width': 14, 'xadvance': 13.5, 'y': 62, 'x': 0, 'height': 36, 'xoffset': -0.313}, 42: {'yoffset': 27.063, 'width': 18, 'xadvance': 17.0, 'y': 236, 'x': 88, 'height': 16, 'xoffset': 0.0}, 43: {'yoffset': 20.375, 'width': 22, 'xadvance': 23.125, 'y': 29, 'x': 93, 'height': 22, 'xoffset': 1.0}, 44: {'yoffset': 5.938, 'width': 9, 'xadvance': 9.75, 'y': 236, 'x': 106, 'height': 14, 'xoffset': 0.188}, 45: {'yoffset': 12.438, 'width': 14, 'xadvance': 13.5, 'y': 136, 'x': 194, 'height': 6, 'xoffset': 0.0}, 46: {'yoffset': 5.875, 'width': 8, 'xadvance': 9.75, 'y': 241, 'x': 137, 'height': 8, 'xoffset': 1.0}, 47: {'yoffset': 28.25, 'width': 18, 'xadvance': 16.875, 'y': 87, 'x': 59, 'height': 38, 'xoffset': -0.688}, 48: {'yoffset': 20.938, 'width': 22, 'xadvance': 22.125, 'y': 230, 'x': 173, 'height': 24, 'xoffset': 0.313}, 49: {'yoffset': 20.938, 'width': 15, 'xadvance': 15.5, 'y': 0, 'x': 72, 'height': 23, 'xoffset': 0.813}, 50: {'yoffset': 20.938, 'width': 20, 'xadvance': 20.125, 'y': 29, 'x': 137, 'height': 23, 'xoffset': 0.438}, 51: {'yoffset': 20.875, 'width': 20, 'xadvance': 19.813, 'y': 57, 'x': 138, 'height': 29, 'xoffset': -0.375}, 52: {'yoffset': 20.75, 'width': 22, 'xadvance': 20.375, 'y': 86, 'x': 207, 'height': 29, 'xoffset': -0.625}, 53: {'yoffset': 20.313, 'width': 20, 'xadvance': 19.063, 'y': 57, 'x': 118, 'height': 29, 'xoffset': -0.438}, 54: {'yoffset': 27.063, 'width': 21, 'xadvance': 20.375, 'y': 193, 'x': 59, 'height': 30, 'xoffset': 0.313}, 55: {'yoffset': 20.375, 'width': 20, 'xadvance': 18.063, 'y': 57, 'x': 158, 'height': 29, 'xoffset': 0.063}, 56: {'yoffset': 27.063, 'width': 21, 'xadvance': 21.438, 'y': 223, 'x': 59, 'height': 30, 'xoffset': 0.313}, 57: {'yoffset': 20.938, 'width': 21, 'xadvance': 20.375, 'y': 65, 'x': 31, 'height': 30, 'xoffset': 0.0}, 58: {'yoffset': 18.875, 'width': 8, 'xadvance': 11.188, 'y': 115, 'x': 248, 'height': 21, 'xoffset': 1.688}, 59: {'yoffset': 18.938, 'width': 9, 'xadvance': 11.25, 'y': 125, 'x': 77, 'height': 27, 'xoffset': 0.938}, 60: {'yoffset': 20.813, 'width': 20, 'xadvance': 23.125, 'y': 29, 'x': 218, 'height': 22, 'xoffset': 1.875}, 61: {'yoffset': 15.688, 'width': 21, 'xadvance': 23.125, 'y': 236, 'x': 0, 'height': 12, 'xoffset': 1.188}, 62: {'yoffset': 20.813, 'width': 20, 'xadvance': 23.125, 'y': 170, 'x': 0, 'height': 22, 'xoffset': 2.0}, 63: {'yoffset': 27.0, 'width': 17, 'xadvance': 17.188, 'y': 57, 'x': 221, 'height': 29, 'xoffset': 0.375}, 64: {'yoffset': 25.563, 'width': 31, 'xadvance': 33.438, 'y': 29, 'x': 0, 'height': 33, 'xoffset': 1.438}, 65: {'yoffset': 26.813, 'width': 29, 'xadvance': 24.188, 'y': 115, 'x': 117, 'height': 29, 'xoffset': -2.188}, 66: {'yoffset': 26.438, 'width': 24, 'xadvance': 23.563, 'y': 115, 'x': 146, 'height': 28, 'xoffset': 0.125}, 67: {'yoffset': 27.0, 'width': 25, 'xadvance': 23.125, 'y': 174, 'x': 145, 'height': 30, 'xoffset': -0.125}, 68: {'yoffset': 26.438, 'width': 28, 'xadvance': 27.0, 'y': 174, 'x': 202, 'height': 28, 'xoffset': 0.125}, 69: {'yoffset': 26.438, 'width': 24, 'xadvance': 23.5, 'y': 174, 'x': 230, 'height': 28, 'xoffset': 0.0}, 70: {'yoffset': 26.438, 'width': 23, 'xadvance': 21.563, 'y': 86, 'x': 140, 'height': 28, 'xoffset': 0.0}, 71: {'yoffset': 27.0, 'width': 28, 'xadvance': 26.125, 'y': 144, 'x': 145, 'height': 30, 'xoffset': -0.125}, 72: {'yoffset': 26.438, 'width': 29, 'xadvance': 29.375, 'y': 202, 'x': 173, 'height': 28, 'xoffset': 0.25}, 73: {'yoffset': 26.438, 'width': 15, 'xadvance': 14.063, 'y': 57, 'x': 238, 'height': 28, 'xoffset': -0.125}, 74: {'yoffset': 26.375, 'width': 21, 'xadvance': 18.625, 'y': 86, 'x': 229, 'height': 29, 'xoffset': -1.313}, 75: {'yoffset': 26.438, 'width': 28, 'xadvance': 25.0, 'y': 202, 'x': 202, 'height': 28, 'xoffset': 0.313}, 76: {'yoffset': 26.438, 'width': 23, 'xadvance': 21.75, 'y': 86, 'x': 117, 'height': 28, 'xoffset': 0.25}, 77: {'yoffset': 26.438, 'width': 34, 'xadvance': 33.313, 'y': 29, 'x': 59, 'height': 28, 'xoffset': -0.688}, 78: {'yoffset': 26.438, 'width': 30, 'xadvance': 27.563, 'y': 57, 'x': 88, 'height': 29, 'xoffset': -1.125}, 79: {'yoffset': 27.0, 'width': 28, 'xadvance': 26.813, 'y': 144, 'x': 173, 'height': 30, 'xoffset': -0.125}, 80: {'yoffset': 26.438, 'width': 23, 'xadvance': 22.0, 'y': 115, 'x': 225, 'height': 28, 'xoffset': 0.125}, 81: {'yoffset': 27.063, 'width': 28, 'xadvance': 26.813, 'y': 29, 'x': 31, 'height': 36, 'xoffset': -0.125}, 82: {'yoffset': 26.438, 'width': 28, 'xadvance': 25.313, 'y': 144, 'x': 201, 'height': 28, 'xoffset': 0.25}, 83: {'yoffset': 27.0, 'width': 21, 'xadvance': 20.25, 'y': 163, 'x': 59, 'height': 30, 'xoffset': 0.25}, 84: {'yoffset': 26.438, 'width': 25, 'xadvance': 22.313, 'y': 202, 'x': 230, 'height': 28, 'xoffset': -1.25}, 85: {'yoffset': 26.375, 'width': 29, 'xadvance': 27.25, 'y': 115, 'x': 88, 'height': 29, 'xoffset': -0.188}, 86: {'yoffset': 26.375, 'width': 29, 'xadvance': 24.0, 'y': 86, 'x': 88, 'height': 29, 'xoffset': -2.188}, 87: {'yoffset': 26.375, 'width': 39, 'xadvance': 35.188, 'y': 0, 'x': 0, 'height': 29, 'xoffset': -1.563}, 88: {'yoffset': 26.438, 'width': 29, 'xadvance': 25.625, 'y': 174, 'x': 173, 'height': 28, 'xoffset': -1.25}, 89: {'yoffset': 26.438, 'width': 27, 'xadvance': 22.188, 'y': 144, 'x': 229, 'height': 28, 'xoffset': -2.25}, 90: {'yoffset': 26.438, 'width': 24, 'xadvance': 21.688, 'y': 115, 'x': 170, 'height': 28, 'xoffset': -1.0}, 91: {'yoffset': 28.188, 'width': 13, 'xadvance': 13.5, 'y': 98, 'x': 0, 'height': 36, 'xoffset': 1.438}, 92: {'yoffset': 28.25, 'width': 18, 'xadvance': 16.875, 'y': 125, 'x': 59, 'height': 38, 'xoffset': 0.063}, 93: {'yoffset': 28.188, 'width': 13, 'xadvance': 13.5, 'y': 134, 'x': 0, 'height': 36, 'xoffset': -0.313}, 94: {'yoffset': 27.125, 'width': 20, 'xadvance': 23.125, 'y': 241, 'x': 117, 'height': 15, 'xoffset': 1.813}, 95: {'yoffset': -1.688, 'width': 27, 'xadvance': 23.188, 'y': 251, 'x': 202, 'height': 5, 'xoffset': -1.563}, 96: {'yoffset': 28.5, 'width': 11, 'xadvance': 18.0, 'y': 152, 'x': 77, 'height': 11, 'xoffset': 4.25}, 97: {'yoffset': 19.313, 'width': 20, 'xadvance': 18.125, 'y': 29, 'x': 178, 'height': 22, 'xoffset': -0.125}, 98: {'yoffset': 28.5, 'width': 23, 'xadvance': 20.188, 'y': 175, 'x': 88, 'height': 31, 'xoffset': -1.75}, 99: {'yoffset': 19.375, 'width': 19, 'xadvance': 16.313, 'y': 192, 'x': 0, 'height': 22, 'xoffset': -0.25}, 100: {'yoffset': 28.5, 'width': 23, 'xadvance': 20.688, 'y': 210, 'x': 117, 'height': 31, 'xoffset': -0.25}, 101: {'yoffset': 19.375, 'width': 19, 'xadvance': 17.375, 'y': 214, 'x': 0, 'height': 22, 'xoffset': -0.25}, 102: {'yoffset': 28.688, 'width': 17, 'xadvance': 11.75, 'y': 205, 'x': 31, 'height': 31, 'xoffset': -1.063}, 103: {'yoffset': 19.313, 'width': 20, 'xadvance': 18.313, 'y': 57, 'x': 178, 'height': 29, 'xoffset': -0.75}, 104: {'yoffset': 28.5, 'width': 24, 'xadvance': 21.0, 'y': 204, 'x': 145, 'height': 31, 'xoffset': -1.375}, 105: {'yoffset': 28.125, 'width': 12, 'xadvance': 10.563, 'y': 62, 'x': 14, 'height': 30, 'xoffset': -0.75}, 106: {'yoffset': 28.125, 'width': 14, 'xadvance': 10.563, 'y': 167, 'x': 31, 'height': 38, 'xoffset': -4.125}, 107: {'yoffset': 28.5, 'width': 23, 'xadvance': 19.313, 'y': 144, 'x': 88, 'height': 31, 'xoffset': -1.375}, 108: {'yoffset': 28.5, 'width': 13, 'xadvance': 10.313, 'y': 134, 'x': 13, 'height': 31, 'xoffset': -1.5}, 109: {'yoffset': 19.25, 'width': 33, 'xadvance': 31.688, 'y': 230, 'x': 202, 'height': 21, 'xoffset': -0.5}, 110: {'yoffset': 19.25, 'width': 23, 'xadvance': 21.25, 'y': 235, 'x': 145, 'height': 21, 'xoffset': -0.438}, 111: {'yoffset': 19.375, 'width': 20, 'xadvance': 19.438, 'y': 29, 'x': 198, 'height': 22, 'xoffset': -0.25}, 112: {'yoffset': 19.25, 'width': 22, 'xadvance': 20.563, 'y': 86, 'x': 163, 'height': 29, 'xoffset': -0.938}, 113: {'yoffset': 19.75, 'width': 23, 'xadvance': 20.125, 'y': 206, 'x': 88, 'height': 30, 'xoffset': -0.25}, 114: {'yoffset': 19.25, 'width': 17, 'xadvance': 14.688, 'y': 0, 'x': 39, 'height': 21, 'xoffset': -0.438}, 115: {'yoffset': 19.375, 'width': 16, 'xadvance': 15.563, 'y': 0, 'x': 56, 'height': 22, 'xoffset': -0.125}, 116: {'yoffset': 24.125, 'width': 15, 'xadvance': 12.438, 'y': 29, 'x': 238, 'height': 27, 'xoffset': -1.25}, 117: {'yoffset': 19.063, 'width': 23, 'xadvance': 20.688, 'y': 57, 'x': 198, 'height': 22, 'xoffset': -0.938}, 118: {'yoffset': 18.813, 'width': 22, 'xadvance': 17.938, 'y': 29, 'x': 115, 'height': 21, 'xoffset': -1.813}, 119: {'yoffset': 18.813, 'width': 31, 'xadvance': 26.563, 'y': 115, 'x': 194, 'height': 21, 'xoffset': -1.563}, 120: {'yoffset': 18.813, 'width': 21, 'xadvance': 18.125, 'y': 29, 'x': 157, 'height': 21, 'xoffset': -1.313}, 121: {'yoffset': 18.813, 'width': 22, 'xadvance': 17.75, 'y': 86, 'x': 185, 'height': 29, 'xoffset': -1.813}, 122: {'yoffset': 18.813, 'width': 18, 'xadvance': 15.938, 'y': 98, 'x': 13, 'height': 21, 'xoffset': -0.563}, 123: {'yoffset': 28.438, 'width': 17, 'xadvance': 15.438, 'y': 131, 'x': 31, 'height': 36, 'xoffset': -0.25}, 124: {'yoffset': 28.25, 'width': 6, 'xadvance': 13.5, 'y': 87, 'x': 77, 'height': 38, 'xoffset': 4.125}, 125: {'yoffset': 28.438, 'width': 17, 'xadvance': 15.438, 'y': 95, 'x': 31, 'height': 36, 'xoffset': -0.375}, 126: {'yoffset': 14.625, 'width': 22, 'xadvance': 23.125, 'y': 0, 'x': 87, 'height': 10, 'xoffset': 0.75}}, 'base': 38, 'face': 'Georgia'};
			sdfGeorgia.img = "textures/sprites/fonts/Georgia.sdf.png";
			sdfGeorgia.width = 256;
			sdfGeorgia.height = 256;

			//

			var clock = new XG.Clock();

			//

			init();
			animate();

			function init() {

				container = document.createElement( 'div' );
				document.body.appendChild( container );

				// renderer

				var pars = {

					"width"		: SCREEN_WIDTH,
					"height"	: SCREEN_HEIGHT,
					"scale"		: SCALE,
					"antialias"	: false,
					"tonemapping": XG.NoOperator,
					"brightness": BRIGHTNESS,
					"clearColor": 0x050505,
					"clearAlpha": 1.0,
					"backend" 	: backend,
					"devicePixelRatio" : 1.0

				};

				renderer = new XG.ForwardRenderer( pars );

				container.appendChild( renderer.domElement );

				renderer.domElement.style.position = "absolute";
				renderer.domElement.style.top = MARGIN + "px";
				renderer.domElement.style.left = "0px";

				// camera

				camera = new XG.PerspectiveCamera( cameraFovInit, SCREEN_WIDTH / SCREEN_HEIGHT, 1, 2000 );
				camera.position.set( 0, 0, 200 );

				// scene

				scene = new XG.Scene();
				scene.add( camera );

				// fonts

				fontsToLoad = 1;

				//loadFont( sdfBebas );
				//loadFont( sdfFiraMediumItalic );
				//loadFont( sdfFiraRegular );
				loadFont( sdfGeorgia );


				// objects

				canvas = document.getElementById( 'canvas' );
				ctx = canvas.getContext( '2d' );

				imageInfo = [

				[ 500, 'textures/avatars/avatar-male-inv.png' ],
				[ 500, 'textures/avatars/avatar-female-inv.png' ],
				[ 600, 'textures/avatars/fog.jpg' ],
				[ 600, 'textures/avatars/avatar-body-inv.png' ],
				[ 600, 'textures/avatars/montana.jpg' ],
				[ 600, 'textures/avatars/hand.jpg' ],

				];

				for ( var i = 0, il = imageInfo.length; i < il; i ++ ) {

					var imgUrl = imageInfo[ i ][ 1 ];

					var img = new Image();
					img.src = imgUrl;

					imageList[ i ] = img;

				}

				var initImage = imageList[ 0 ];

				initImage.onload = function() {

					var numSprites = isMobile ? 40000 : 80000;
					var depth = 200;

					var characterField = createCharacterField( initImage, numSprites, depth );

					characterFieldList[ 0 ] = characterField;
					characterFieldList[ 1 ] = characterField;

					setCharacterField( 0 );
					setImage( initImage );

				};

				var bigImage = imageList[ 2 ];
				bigImage.onload = function() {

					var numSprites = isMobile ? 80000 : 160000;
					var depth = 200;

					var characterField = createCharacterField( initImage, numSprites, depth );

					characterFieldList[ 2 ] = characterField;
					characterFieldList[ 3 ] = characterField;
					characterFieldList[ 4 ] = characterField;
					characterFieldList[ 5 ] = characterField;
					characterFieldList[ 6 ] = characterField;

				};

				// stats

				stats = new Stats();
				container.appendChild( stats.domElement );

				stats.domElement.className = "noselect";

				// events

				window.addEventListener( 'resize', onWindowResize, false );
				renderer.domElement.addEventListener( 'mousemove', onDocumentMouseMove, false );
				renderer.domElement.addEventListener( 'mousedown', onDocumentMouseClick, false );
				renderer.domElement.addEventListener( 'touchmove', onTouchMove, false );
				renderer.domElement.addEventListener( 'wheel', onDocumentWheel, false );

				onWindowResize();

			}

			// -----------------------------------------------------------------------------------------------------------

			function createCharacterField( image, numSprites, depth ) {

				var materialParameters =  {

					"fogEnabled"	: true,
					"fogDensity"	: 0.002,
					"fogColor"		: 0x050505

				};

				canvas.width = image.width;
				canvas.height = image.height;
				canvas.style.width = image.width + 'px';
				canvas.style.height = image.height + 'px';

				ctx.drawImage( image, 0, 0 );

				var pixel = ctx.getImageData( 0, 0, image.width, image.height );
				var imageData = pixel.data;

				var characterFieldData = generateCharacterField( sdfGeorgia, numSprites, materialParameters, image.width, image.height, depth );
				characterFieldData.geometry.dynamic = true;
				characterFieldData.mesh.visible = false;

				scene.add( characterFieldData.mesh );

				return characterFieldData;

			}

			// -----------------------------------------------------------------------------------------------------------

			function refreshImagePixelIndex( sprites, width, height ) {

				var numSprites = sprites.length;

				for ( var i = 0; i < numSprites; i ++ ) {

					var sprite = sprites[ i ];

					var x = sprite[ 1 ];
					var y = sprite[ 2 ];
					var z = sprite[ 3 ];

					var px = Math.floor( x + width * 0.5 );
					var py = height - 1 - Math.floor( y + height * 0.5 );

					var pixelIndex = py * width + px;

					sprite[ 9 ] = pixelIndex;

				}

			}

			// -----------------------------------------------------------------------------------------------------------

			function setCharacterField( index ) {

				if ( currentMesh ) currentMesh.visible = false;

				var characterField = characterFieldList[ index ];

				currentMesh = characterField.mesh;
				currentGeometry = characterField.geometry;
				currentSprites = characterField.sprites;
				currentUniforms = characterField.material.uniforms;

				currentMesh.visible = true;

			}

			// -----------------------------------------------------------------------------------------------------------

			function setImage( image ) {

				canvas.width = image.width;
				canvas.height = image.height;
				canvas.style.width = image.width + 'px';
				canvas.style.height = image.height + 'px';

				ctx.drawImage( image, 0, 0 );

				var pixel = ctx.getImageData( 0, 0, image.width, image.height );
				var imageData = pixel.data;

				refreshGeometryPositions( currentGeometry, imageData, currentSprites, image.width, image.height );
				refreshImagePixelIndex( currentSprites, image.width, image.height );

				setGeometryColors( currentGeometry, imageData, currentSprites );
				updateGeometryData( currentGeometry, imageData, currentSprites );

			}

			// -----------------------------------------------------------------------------------------------------------

			function refreshGeometryPositions( geometry, data, sprites, width, height ) {

				var numSprites = sprites.length;

				for ( var i = 0; i < numSprites; i ++ ) {

					var sprite = sprites[ i ];

					var x = ( XG.Math.randomFloat16() - 0.5 ) * width;
					var y = ( XG.Math.randomFloat16() - 0.5 ) * height;
					var z = sprite[ 3 ];

					geometry.setSpritePosition( i, x, y, z );

					var dx = XG.Math.randomFloat( -5, 5 );
					var dy = XG.Math.randomFloat( -5, 5 );

					sprite[ 1 ] = x;
					sprite[ 2 ] = y;

					sprite[ 4 ] = dx;
					sprite[ 5 ] = dy;

				}

				geometry.attributes[ "offset" ].needsUpdate = true;

			}

			// -----------------------------------------------------------------------------------------------------------

			function setGeometryColors( geometry, imageData, sprites ) {

				var numSprites = sprites.length;

				for ( var i = 0; i < numSprites; i ++ ) {

					var sprite = sprites[ i ];

					var depth 	   = sprite[ 0 ];
					var pixelIndex = sprite[ 9 ];

					var pixelOffset = pixelIndex * 4;

					var r = imageData[ pixelOffset ];
					var g = imageData[ pixelOffset + 1 ];
					var b = imageData[ pixelOffset + 2 ];

					r = ( r / 255 ) * depth;
					g = ( g / 255 ) * depth;
					b = ( b / 255 ) * depth;

					geometry.setSpriteColor( i, r, g, b );

				}

				geometry.attributes[ "color" ].needsUpdate = true;

			}

			// -----------------------------------------------------------------------------------------------------------

			function updateGeometryData( geometry, data, sprites ) {

				var numSprites = sprites.length;

				for ( var i = 0; i < numSprites; i ++ ) {

					var sprite = sprites[ i ];

					var d = sprite[ 0 ];

					var x = sprite[ 1 ];
					var y = sprite[ 2 ];
					var z = sprite[ 3 ];

					var pixelIndex = sprite[ 9 ];

					var pixelOffset = pixelIndex * 4;

					var r = data[ pixelOffset ];
					var g = data[ pixelOffset + 1 ];
					var b = data[ pixelOffset + 2 ];

					r = ( r / 255 ) * d;
					g = ( g / 255 ) * d;
					b = ( b / 255 ) * d;

					//if ( r < 0.1 ) geometry.setSpritePosition( i, x, y, 10000.0 );
					if ( g < 0.135 ) geometry.setSpritePosition( i, x, y, 10000.0 );
					//if ( b < 0.2 ) geometry.setSpritePosition( i, x, y, 10000.0 );

				}

				geometry.attributes[ "offset" ].needsUpdate = true;

			}

			// event handlers

			function onWindowResize ( event ) {

				SCREEN_WIDTH = window.innerWidth;
				SCREEN_HEIGHT = window.innerHeight - 2 * MARGIN;

				renderer.setSize( SCREEN_WIDTH, SCREEN_HEIGHT );

				camera.aspect = SCREEN_WIDTH/ SCREEN_HEIGHT;
				camera.updateProjectionMatrix();

                mobileInfoElement.style.top = Math.floor( ( SCREEN_HEIGHT - mobileInfoElement.offsetHeight ) * 0.5 + MARGIN ) + 'px';

			}

			function onDocumentMouseMove ( event ) {

				mouseX = ( event.clientX - windowHalfX );
				mouseY = ( event.clientY - windowHalfY );

			}

			function onDocumentMouseClick ( event ) {

				nextImage();

			}


			function onTouchMove( event ) {

				event.preventDefault();

				var touches = event.touches;
				var touch = touches[ 0 ];

				mouseX = ( touch.clientX - windowHalfX );
				mouseY = ( touch.clientY - windowHalfY );

			}

			function onDocumentWheel ( event ) {

				var unit = event.deltaMode;

				var scale = 1;

				if ( unit === 0 ) scale = 0.01;		// pixels
				else if ( unit === 1 ) scale = 0.1;	// lines

				cameraFovTarget += event.deltaY * scale;

				var maxFov = 90;
				var minFov = 4;

				if ( cameraFovTarget > maxFov ) {

					cameraFovTarget = maxFov;

				}

				if ( cameraFovTarget < minFov ) {

					cameraFovTarget = minFov;

				}

			}

			// -----------------------------------------------------------------------------------------------------------

			function nextImage() {

				currentImageIndex = ( currentImageIndex + 1 ) % imageList.length;

				setCharacterField( currentImageIndex );

				var image = imageList[ currentImageIndex ];
				setImage( image );

			}

			// -----------------------------------------------------------------------------------------------------------

			function patchSpriteMaterial() {

				var vertexShader = [

					"uniform float time;",

					"attribute vec3 color;",
					"attribute vec3 offset;",
					"attribute vec2 scale;",
					"attribute vec2 localoffset;",

					"varying vec2 vUv;",
					"varying vec3 vColor;",

					'void main() {',

						"vUv = uv;",
						"vColor = color;",

						"float ax = mod( ( localoffset.x + offset.x * time * 0.15 ), 5.0 );",
						"float ay = mod( ( localoffset.y - time * 12.0 ) / scale.x, 5.0 ) - 2.5;",

						"vec3 animoffset = vec3( ax, ay, 0.0 );",

						"vec4 tmpPosition = modelViewMatrix * vec4( offset + animoffset, 1.0 ) + vec4( position * vec3( scale, 1.0 ), 0.0 );",
						"gl_Position = projectionMatrix * tmpPosition;",

					"}"

				].join( "\n" );

				XG.SpriteShader.vertexShader = vertexShader;

				XG.SpriteShader.uniforms[ "time" ] = { "type": "f", "value": 0.0 };

			}

			// -----------------------------------------------------------------------------------------------------------

			function generateCharacterField ( font, numSprites, materialParameters, width, height, depth ) {

				var textureAtlasInfo = {

					"width"		: font.width,
					"height"	: font.height,
					"base"		: font.base

				};

				patchSpriteMaterial();

				var material = new XG.SpriteMaterial( {

					"textureAtlas"	: font.map,
					"billboard"		: true,
					"antialias"		: true,
					"sdf"			: true,
					"fog"			: false,
					"fogDensity"	: materialParameters.fogDensity,
					"fogColor"		: materialParameters.fogColor

				} );

				var geometry = new XG.SpriteGeometry( numSprites );

				geometry.addAttribute( "localoffset", Float32Array, 2 );
				var localoffset = geometry.attributes[ "localoffset" ].array;

				var sprites = [];

				for ( var i = 0; i < numSprites; i ++ ) {

					var x = ( XG.Math.randomFloat16() - 0.5 ) * width;
					var y = ( XG.Math.randomFloat16() - 0.5 ) * height;
					var z = ( XG.Math.randomFloat16() - 0.5 ) * depth;

					//

					var spriteDepth = z / depth + 0.5;
					spriteDepth *= spriteDepth;

					//

					var s = XG.Math.randomFloat( 0.05, 0.15 ) * 1.0;

					var sx = s;
					var sy = s;

					//

					//var glyphIndex = XG.Math.randomInt( 48, 49 ); // 0 ... 1
					//var glyphIndex = XG.Math.randomInt( 97, 122 );	//	A ... Z
					//var glyphIndex = XG.Math.randomInt( 65, 90 );	//	a ... z
					var glyphIndex = XG.Math.randomInt( 48, 57 );	// 0 ... 9
					var glyphInfo = font.chars[ glyphIndex ];

					//

					geometry.setSpritePosition( i, x, y, z );
					geometry.setSpriteScale( i, sx, sy );
					geometry.setSpriteTexture( i, glyphInfo, textureAtlasInfo );
					geometry.setSpriteColor( i, 1, 0, 0 );

					var dx = XG.Math.randomFloat( 0, 5 );
					var dy = XG.Math.randomFloat( -5, 5 );

					var px = Math.floor( x + width * 0.5 );
					var py = height - 1 - Math.floor( y + height * 0.5 );

					var pixelIndex = py * width + px;

					sprites[ i ] = [ spriteDepth, x, y, z, dx, dy, sx, sy, glyphIndex, pixelIndex ];

					var indexOffset = i * 8;

					localoffset[ indexOffset ] 	   = dx;
					localoffset[ indexOffset + 1 ] = dy;

					localoffset[ indexOffset + 2 ] = dx;
					localoffset[ indexOffset + 3 ] = dy;

					localoffset[ indexOffset + 4 ] = dx;
					localoffset[ indexOffset + 5 ] = dy;

					localoffset[ indexOffset + 6 ] = dx;
					localoffset[ indexOffset + 7 ] = dy;

				}

				sprites.sort( compareDepths );

				for ( var i = 0; i < numSprites; i ++ ) {

					var sprite = sprites[ i ];

					var x = sprite[ 1 ];
					var y = sprite[ 2 ];
					var z = sprite[ 3 ];

					geometry.setSpritePosition( i, x, y, z );

				}

				var mesh = new XG.Mesh( geometry, material );

				var characterFieldInfo = {

					"mesh"				: mesh,
					"geometry"			: geometry,
					"material"			: material,
					"sprites"			: sprites,

					"font"				: font,
					"textureAtlasInfo" 	: textureAtlasInfo

				};

				return characterFieldInfo;

			}

			// -----------------------------------------------------------------------------------------------------------

			function compareDepths( a, b ) {

				return a[ 0 ] - b[ 0 ];

			}

			// -----------------------------------------------------------------------------------------------------------

			function fontCallback () {

				fontCounter += 1;

				if ( fontCounter >= fontsToLoad ) {

					loadingElement.style.display = "none";

				}

			}

			function loadFont ( font ) {

				var map = XG.ImageUtils.loadTexture( font.img, fontCallback );
				map.anisotropy = 16;

				font.map = map;

			}

			// -----------------------------------------------------------------------------------------------------------
			// updates
			// -----------------------------------------------------------------------------------------------------------

			function animate() {

				requestAnimationFrame( animate );
				render();

				stats.update();

			}

			function render() {

				var delta = clock.getDelta();
				delta = Math.min( delta, 0.1 );

				var time = clock.elapsedTime;

				// update scene

				if ( currentUniforms ) {

					currentUniforms[ "time" ].value = time;

				}

				if ( isMobile && mobileInfoVisible ) {

					if ( time > 2 ) mobileInfoOpacity = XG.Math.clamp( mobileInfoOpacity - delta, 0, 1 );
					mobileInfoElement.style.opacity = mobileInfoOpacity;

					if ( mobileInfoOpacity === 0 ) {

						mobileInfoElement.style.display = "none";
						mobileInfoVisible = false;

					}

				}

				// update camera

				targetX = mouseX * 0.04;
				targetY = mouseY * 0.04;

				angle  += 0.05 * ( targetX - angle );
				height += 0.05 * ( targetY - height );

				var f = 0.005;

				var d = imageInfo[ currentImageIndex ][ 0 ];

				var x =  -Math.sin( angle * f ) * d;
				var z =   Math.cos( angle * f ) * d;
				var y = 1.5 * height + 0;

				camera.position.set( x, y, z );
				camera.lookAt( target );

				var zoomSpeed = 2.0;

				camera.fov = camera.fov + ( cameraFovTarget - camera.fov ) * delta * zoomSpeed;
				camera.updateProjectionMatrix();

				// render scene

				renderer.render( scene, camera );

				//

				frameCounter += 1;

			}

		</script><div><canvas width="858" height="971" style="width: 858px; height: 971px; position: absolute; top: 0px; left: 0px;"></canvas><div id="stats" class="noselect" style="width: 80px; opacity: 0.9; cursor: pointer;"><div id="fps" style="padding: 0px 0px 3px 3px; text-align: left; background-color: rgb(0, 0, 34);"><div id="fpsText" style="color: rgb(0, 255, 255); font-family: Helvetica, Arial, sans-serif; font-size: 9px; font-weight: bold; line-height: 15px;">61 FPS (43-61)</div><div id="fpsGraph" style="position: relative; width: 74px; height: 30px; background-color: rgb(0, 255, 255);"><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 30px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 17.1px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 12.6px; float: left; background-color: rgb(17, 17, 51);"></span><span style="width: 1px; height: 11.7px; float: left; background-color: rgb(17, 17, 51);"></span></div></div><div id="ms" style="padding: 0px 0px 3px 3px; text-align: left; background-color: rgb(0, 34, 0); display: none;"><div id="msText" style="color: rgb(0, 255, 0); font-family: Helvetica, Arial, sans-serif; font-size: 9px; font-weight: bold; line-height: 15px;">17 MS (0-212)</div><div id="msGraph" style="position: relative; width: 74px; height: 30px; background-color: rgb(0, 255, 0);"><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.6px; float: left; background-color: rgb(17, 51, 17);"></span><span style="width: 1px; height: 27.45px; float: left; background-color: rgb(17, 51, 17);"></span></div></div></div></div>

<script>document$.subscribe(() => {const lightbox = GLightbox({"touchNavigation": true, "loop": false, "zoomable": true, "draggable": true, "openEffect": "zoom", "closeEffect": "zoom", "slideEffect": "slide"});})</script></body></html>






      <main class="md-main" data-md-component="main">
        <div class="md-main__inner md-grid">
          
            
              
              <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
                <div class="md-sidebar__scrollwrap">
                  <div class="md-sidebar__inner">
                    


  


  

<nav class="md-nav md-nav--primary md-nav--lifted md-nav--integrated" aria-label="导航栏" data-md-level="0">
  <label class="md-nav__title" for="__drawer">
    <a href="." title="SEMHAQ/NoteBook" class="md-nav__button md-logo" aria-label="SEMHAQ/NoteBook" data-md-component="logo">
      
  <img src="images/logo.png" alt="logo">

    </a>
    SEMHAQ/NoteBook
  </label>
  
    <div class="md-nav__source">
      <a href="https://github.com/SEMHAQ/NoteBook" title="前往仓库" class="md-source" data-md-component="source">
  <div class="md-source__icon md-icon">
    
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2023 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
  </div>
  <div class="md-source__repository">
    SEMHAQ /NoteBook
  </div>
</a>
    </div>
  
  <ul class="md-nav__list" data-md-scrollfix>
    
      
      
  
  
    
  
  
  
    <li class="md-nav__item md-nav__item--active">
      
      <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
      
      
      
      <a href="." class="md-nav__link md-nav__link--active">
        
  
  <span class="md-ellipsis">
    主页
  </span>
  

      </a>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
        
          
          <label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="">
            
  
  <span class="md-ellipsis">
    LeetCode
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2">
            <span class="md-nav__icon md-icon"></span>
            LeetCode
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1" >
        
          
          <label class="md-nav__link" for="__nav_2_1" id="__nav_2_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    每日一题
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_1">
            <span class="md-nav__icon md-icon"></span>
            每日一题
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_1" >
        
          
          <label class="md-nav__link" for="__nav_2_1_1" id="__nav_2_1_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    2023年3月
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_1_1">
            <span class="md-nav__icon md-icon"></span>
            2023年3月
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1605.%20%E7%BB%99%E5%AE%9A%E8%A1%8C%E5%92%8C%E5%88%97%E7%9A%84%E5%92%8C%E6%B1%82%E5%8F%AF%E8%A1%8C%E7%9F%A9%E9%98%B5/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月14号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1615.%20%E6%9C%80%E5%A4%A7%E7%BD%91%E7%BB%9C%E7%A7%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月15号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/2488.%20%E7%BB%9F%E8%AE%A1%E4%B8%AD%E4%BD%8D%E6%95%B0%E4%B8%BA%20K%20%E7%9A%84%E5%AD%90%E6%95%B0%E7%BB%84/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月16号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/2389.%20%E5%92%8C%E6%9C%89%E9%99%90%E7%9A%84%E6%9C%80%E9%95%BF%E5%AD%90%E5%BA%8F%E5%88%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月17号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1616.%20%E5%88%86%E5%89%B2%E4%B8%A4%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%BE%97%E5%88%B0%E5%9B%9E%E6%96%87%E4%B8%B2/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月18号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1625.%20%E6%89%A7%E8%A1%8C%E6%93%8D%E4%BD%9C%E5%90%8E%E5%AD%97%E5%85%B8%E5%BA%8F%E6%9C%80%E5%B0%8F%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月19号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1012.%20%E8%87%B3%E5%B0%91%E6%9C%89%201%20%E4%BD%8D%E9%87%8D%E5%A4%8D%E7%9A%84%E6%95%B0%E5%AD%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月20号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/2469.%20%E6%B8%A9%E5%BA%A6%E8%BD%AC%E6%8D%A2/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月21号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1626.%20%E6%97%A0%E7%9F%9B%E7%9B%BE%E7%9A%84%E6%9C%80%E4%BD%B3%E7%90%83%E9%98%9F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月22号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1630.%20%E7%AD%89%E5%B7%AE%E5%AD%90%E6%95%B0%E7%BB%84/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月23号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1032.%20%E5%AD%97%E7%AC%A6%E6%B5%81/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月24号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1574.%20%E5%88%A0%E9%99%A4%E6%9C%80%E7%9F%AD%E7%9A%84%E5%AD%90%E6%95%B0%E7%BB%84%E4%BD%BF%E5%89%A9%E4%BD%99%E6%95%B0%E7%BB%84%E6%9C%89%E5%BA%8F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月25号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/2395.%20%E5%92%8C%E7%9B%B8%E7%AD%89%E7%9A%84%E5%AD%90%E6%95%B0%E7%BB%84/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月26号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1638.%20%E7%BB%9F%E8%AE%A1%E5%8F%AA%E5%B7%AE%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E7%9A%84%E5%AD%90%E4%B8%B2%E6%95%B0%E7%9B%AE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月27号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1092.%20%E6%9C%80%E7%9F%AD%E5%85%AC%E5%85%B1%E8%B6%85%E5%BA%8F%E5%88%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月28号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1641.%20%E7%BB%9F%E8%AE%A1%E5%AD%97%E5%85%B8%E5%BA%8F%E5%85%83%E9%9F%B3%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E6%95%B0%E7%9B%AE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月29号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/1637.%20%E4%B8%A4%E7%82%B9%E4%B9%8B%E9%97%B4%E4%B8%8D%E5%8C%85%E5%90%AB%E4%BB%BB%E4%BD%95%E7%82%B9%E7%9A%84%E6%9C%80%E5%AE%BD%E5%9E%82%E7%9B%B4%E5%8C%BA%E5%9F%9F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月30号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B43%E6%9C%88/2367.%20%E7%AE%97%E6%9C%AF%E4%B8%89%E5%85%83%E7%BB%84%E7%9A%84%E6%95%B0%E7%9B%AE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年3月31号
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_1_2" >
        
          
          <label class="md-nav__link" for="__nav_2_1_2" id="__nav_2_1_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    2023年4月
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_1_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_1_2">
            <span class="md-nav__icon md-icon"></span>
            2023年4月
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B44%E6%9C%88/831.%20%E9%9A%90%E8%97%8F%E4%B8%AA%E4%BA%BA%E4%BF%A1%E6%81%AF/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年4月1号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B44%E6%9C%88/1039.%20%E5%A4%9A%E8%BE%B9%E5%BD%A2%E4%B8%89%E8%A7%92%E5%89%96%E5%88%86%E7%9A%84%E6%9C%80%E4%BD%8E%E5%BE%97%E5%88%86/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年4月2号
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E6%AF%8F%E6%97%A5%E4%B8%80%E9%A2%98/2023%E5%B9%B44%E6%9C%88/1053.%20%E4%BA%A4%E6%8D%A2%E4%B8%80%E6%AC%A1%E7%9A%84%E5%85%88%E5%89%8D%E6%8E%92%E5%88%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023年4月3号
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2" >
        
          
          <label class="md-nav__link" for="__nav_2_2" id="__nav_2_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    学习计划
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_2">
            <span class="md-nav__icon md-icon"></span>
            学习计划
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2_1" >
        
          
          <label class="md-nav__link" for="__nav_2_2_1" id="__nav_2_2_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    算法入门
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_2_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_2_1">
            <span class="md-nav__icon md-icon"></span>
            算法入门
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%85%A5%E9%97%A8/%E7%AC%AC%E4%B8%80%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第一天
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_2_2" >
        
          
          <label class="md-nav__link" for="__nav_2_2_2" id="__nav_2_2_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    算法基础
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_2_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_2_2_2">
            <span class="md-nav__icon md-icon"></span>
            算法基础
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%B8%80%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第一天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%BA%8C%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第二天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%B8%89%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第三天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%9B%9B%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第四天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%BA%94%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第五天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%85%AD%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第六天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%B8%83%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第七天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%85%AB%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第八天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%B9%9D%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第九天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E4%B8%80%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十一天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E4%BA%8C%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十二天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E4%B8%89%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十三天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E5%9B%9B%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十四天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E4%BA%94%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十五天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E5%85%AD%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十六天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E4%B8%83%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十七天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E5%85%AB%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十八天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E5%8D%81%E4%B9%9D%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第十九天
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="leetcode/%E5%AD%A6%E4%B9%A0%E8%AE%A1%E5%88%92/%E7%AE%97%E6%B3%95%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%BA%8C%E5%8D%81%E5%A4%A9/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    第二十天
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
        
          
          <label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="">
            
  
  <span class="md-ellipsis">
    机器学习
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_3">
            <span class="md-nav__icon md-icon"></span>
            机器学习
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_1" >
        
          
          <label class="md-nav__link" for="__nav_3_1" id="__nav_3_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    Python机器学习简单应用
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_3_1">
            <span class="md-nav__icon md-icon"></span>
            Python机器学习简单应用
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/Python%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%AE%80%E5%8D%95%E5%BA%94%E7%94%A8/introduction/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    介绍
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/Python%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%AE%80%E5%8D%95%E5%BA%94%E7%94%A8/dataset/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    数据集说明
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/Python%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%AE%80%E5%8D%95%E5%BA%94%E7%94%A8/predict/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    预测算法
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/Python%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E7%AE%80%E5%8D%95%E5%BA%94%E7%94%A8/sorting/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    分类算法
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
        
          
          <label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="">
            
  
  <span class="md-ellipsis">
    MarkDown语法
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_4">
            <span class="md-nav__icon md-icon"></span>
            MarkDown语法
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E6%A0%87%E9%A2%98/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown标题
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E6%AE%B5%E8%90%BD%E6%A0%BC%E5%BC%8F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown段落格式
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E5%88%97%E8%A1%A8/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown列表
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E5%8C%BA%E5%9D%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown区块
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E4%BB%A3%E7%A0%81/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown代码
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E9%93%BE%E6%8E%A5/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown链接
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E5%9B%BE%E7%89%87/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown图片
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E8%A1%A8%E6%A0%BC/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown表格
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="MarkDown%E8%AF%AD%E6%B3%95/Markdown%E9%AB%98%E7%BA%A7%E6%8A%80%E5%B7%A7/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Markdown高级技巧
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
        
          
          <label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
            
  
  <span class="md-ellipsis">
    Git详解
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_5">
            <span class="md-nav__icon md-icon"></span>
            Git详解
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="Git%E8%AF%A6%E8%A7%A3/%E4%B8%8A%E4%BC%A0%E5%88%B0%E4%BB%93%E5%BA%93/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    上传到仓库
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
        
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
        
          
          <label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
            
  
  <span class="md-ellipsis">
    数据库相关
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_6">
            <span class="md-nav__icon md-icon"></span>
            数据库相关
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" >
        
          
          <label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    SQL教程
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_6_1">
            <span class="md-nav__icon md-icon"></span>
            SQL教程
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%E7%AE%80%E4%BB%8B/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 简介
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%E8%AF%AD%E6%B3%95/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 语法
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20SELECT/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL SELECT 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20SELECT%20DISTINCT/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL SELECT DISTINCT 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20WHERE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL WHERE 子句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20AND%20%26%20OR/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL AND & OR 运算符
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20ORDER%20BY/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL ORDER BY 关键字
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20INSERT%20INTO/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL INSERT INTO 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20UPDATE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL UPDATE 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E6%95%99%E7%A8%8B/SQL%20DELETE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL DELETE 语句
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_2" >
        
          
          <label class="md-nav__link" for="__nav_6_2" id="__nav_6_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    SQL高级教程
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_6_2">
            <span class="md-nav__icon md-icon"></span>
            SQL高级教程
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20SELECT%20TOP/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL SELECT TOP, LIMIT, ROWNUM 子句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20LIKE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL LIKE 操作符
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E9%80%9A%E9%85%8D%E7%AC%A6/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 通配符
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20IN%20%E6%93%8D%E4%BD%9C%E7%AC%A6/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL IN 操作符
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20BETWEEN%20%E6%93%8D%E4%BD%9C%E7%AC%A6/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL BETWEEN 操作符
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E5%88%AB%E5%90%8D/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 别名
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E8%BF%9E%E6%8E%A5%28JOIN%29/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 连接(JOIN)
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20INNER%20JOIN%20%E5%85%B3%E9%94%AE%E5%AD%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL INNER JOIN 关键字
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20LEFT%20JOIN%20%E5%85%B3%E9%94%AE%E5%AD%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL LEFT JOIN 关键字
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20RIGHT%20JOIN%20%E5%85%B3%E9%94%AE%E5%AD%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL RIGHT JOIN 关键字
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20FULL%20OUTER%20JOIN%20%E5%85%B3%E9%94%AE%E5%AD%97/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL FULL OUTER JOIN 关键字
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20UNION%20%E6%93%8D%E4%BD%9C%E7%AC%A6/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL UNION 操作符
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20SELECT%20INTO%20%E8%AF%AD%E5%8F%A5/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL SELECT INTO 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20INSERT%20INTO%20SELECT%20%E8%AF%AD%E5%8F%A5/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL INSERT INTO SELECT 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20CREATE%20DATABASE%20%E8%AF%AD%E5%8F%A5/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL CREATE DATABASE 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20CREATE%20TABLE%20%E8%AF%AD%E5%8F%A5/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL CREATE TABLE 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E7%BA%A6%E6%9D%9F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 约束（Constraints）
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20NOT%20NULL/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL NOT NULL 约束
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20UNIQUE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL UNIQUE 约束
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20PRIMARY%20KEY/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL PRIMARY KEY 约束
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20FOREIGN%20KEY/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL FOREIGN KEY 约束
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20CHECK/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL CHECK 约束
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20DEFAULT/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL DEFAULT 约束
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20CREATE%20INDEX/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL CREATE INDEX 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20DROP/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 撤销索引、撤销表以及撤销数据库
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20ALTER%20TABLE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL ALTER TABLE 语句
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20AUTO%20INCREMENT/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL AUTO INCREMENT 字段
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E8%A7%86%E5%9B%BE/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 视图（Views）
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E6%97%A5%E6%9C%9F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL Date 函数
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20NULL%20%E5%80%BC/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL NULL 值
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20NULL%20%E5%87%BD%E6%95%B0/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL NULL 函数
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20%E9%80%9A%E7%94%A8%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 通用数据类型
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E9%AB%98%E7%BA%A7%E6%95%99%E7%A8%8B/SQL%20DB%20%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 用于各种数据库的数据类型
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_3" >
        
          
          <label class="md-nav__link" for="__nav_6_3" id="__nav_6_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    SQL函数
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_6_3">
            <span class="md-nav__icon md-icon"></span>
            SQL函数
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E5%87%BD%E6%95%B0/SQL%20%E5%87%BD%E6%95%B0/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 函数
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E5%87%BD%E6%95%B0/SQL%E5%BF%AB%E9%80%9F%E5%8F%82%E8%80%83/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 快速参考
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E5%87%BD%E6%95%B0/SQL%20%E5%87%BD%E6%95%B0%E5%A4%A7%E5%85%A8/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 函数大全
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E5%87%BD%E6%95%B0/SQL%20%E4%B8%BB%E6%9C%BA/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 主机
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%95%B0%E6%8D%AE%E5%BA%93%E7%9B%B8%E5%85%B3/SQL%E5%87%BD%E6%95%B0/SQL%20%E6%80%BB%E7%BB%93/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    SQL 总结
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
        
          
          <label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="">
            
  
  <span class="md-ellipsis">
    探店系列
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_7">
            <span class="md-nav__icon md-icon"></span>
            探店系列
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%A5%BD%E5%91%B3%E9%81%93%205%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    好味道 5❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%85%B0%E5%B7%9E%E6%8B%89%E9%9D%A2%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    兰州拉面 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E6%96%B0%E5%B9%B2%E7%BA%BF%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    新干线 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E9%99%95%E8%A5%BF%E9%9D%A2%E9%A6%86%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    陕西面馆 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E6%97%BA%E8%A7%92%E8%8C%B6%E9%A4%90%E5%8E%85%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    旺角茶餐厅 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E6%B7%B1%E8%A1%97%E5%B0%8F%E5%B7%B7%E8%9E%BA%E8%9B%B3%E7%B2%89%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    深街小巷螺蛳粉 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E8%80%81%E5%8F%8B%E8%AE%B0%E6%B8%AF%E5%BC%8F%E8%8C%B6%E9%A4%90%E5%8E%85%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    老友记港式茶餐厅 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E4%BA%91%E5%8D%97%E7%93%A6%E9%A6%99%E9%B8%A1%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    云南瓦香鸡 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/168%E8%8C%B6%E9%A4%90%E5%8E%85%204%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    168茶餐厅 4❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E7%B2%A4%E8%8F%9C%E7%9A%87%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    粤菜皇 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E9%94%85%E5%B7%B4%E9%A6%99%E7%85%B2%E4%BB%94%E9%A5%AD%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    锅巴香煲仔饭 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E6%98%8E%E6%96%B0%E7%BE%8E%E9%A3%9F%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    明新美食 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E7%83%A4%E9%B1%BC%E4%B8%96%E5%AE%B6%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    烤鱼世家 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E6%96%B0%E7%96%86%E7%82%92%E7%B1%B3%E7%B2%89%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    新疆炒米粉 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%8D%97%E6%98%8C%E6%8B%8C%E7%B2%89%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    南昌拌粉 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E6%96%B0%E8%8A%B3%E5%B7%B7%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    新芳巷 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E8%A5%BF%E9%9B%85%E7%83%98%E7%84%99%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    西雅烘焙 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E7%8A%AF%E8%A7%84%E5%B0%8F%E5%8E%A8%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    犯规小厨 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E9%B2%9C%E6%9E%9C%E6%97%B6%E5%85%89%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    鲜果时光 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%A0%95%E8%90%BD%E7%9A%84%E5%95%B5%E5%95%B5%E9%B1%BC%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    堕落的啵啵鱼 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E9%98%BF%E5%96%9C%E7%8C%AA%E6%89%92%E5%8C%85%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    阿喜猪扒包 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%93%81%E9%A6%99%E8%8C%B6%203%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    品香茶 3❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E9%87%8D%E5%BA%86%E9%B8%A1%E5%85%AC%E7%85%B2%202%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    重庆鸡公煲 2❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E7%86%8A%E5%AE%B6%E6%97%A0%E4%BA%8C%E9%9F%A9%E5%BC%8F%E7%82%B8%E9%B8%A1%202%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    熊家无二韩式炸鸡 2❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E4%B8%89%E6%B1%81%E7%84%96%E9%94%85%202%E2%9D%A4/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    三汁焖锅 2❤
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E9%A3%9F%E5%85%89%E6%B2%99%E6%8B%89/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    食光沙拉
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/Yuki%E8%BD%BB%E9%A3%9F/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    Yuki轻食
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%BC%A0%E7%A7%80%E6%A2%85%E7%83%A4%E8%82%89%E6%8B%8C%E9%A5%AD/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    张秀梅烤肉拌饭
  </span>
  

      </a>
    </li>
  

              
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="%E6%8E%A2%E5%BA%97%E7%B3%BB%E5%88%97/%E5%8C%97%E6%B5%B7%E9%81%93/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    北海道
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
          
        
      
        
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
        
          
          
          <div class="md-nav__link md-nav__container">
            <a href="blog/" class="md-nav__link ">
              
  
  <span class="md-ellipsis">
    Blog
  </span>
  

            </a>
            
              
              <label class="md-nav__link " for="__nav_8" id="__nav_8_label" tabindex="">
                <span class="md-nav__icon md-icon"></span>
              </label>
            
          </div>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_8">
            <span class="md-nav__icon md-icon"></span>
            Blog
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
            
              
                
  
  
  
  
    
    
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_2" >
        
          
          <label class="md-nav__link" for="__nav_8_2" id="__nav_8_2_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    归档
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_2_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_8_2">
            <span class="md-nav__icon md-icon"></span>
            归档
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
    
  
  
    <li class="md-nav__item">
      <a href="blog/archive/2023/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    2023
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
              
                
  
  
  
  
    
    
      
        
      
    
    
    
    
    <li class="md-nav__item md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_3" >
        
          
          <label class="md-nav__link" for="__nav_8_3" id="__nav_8_3_label" tabindex="0">
            
  
  <span class="md-ellipsis">
    分类
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_3_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_8_3">
            <span class="md-nav__icon md-icon"></span>
            分类
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
    
  
  
    <li class="md-nav__item">
      <a href="blog/category/general/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    General
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
      
      
  
  
  
  
    
    
      
        
      
    
    
    
    
      
      
    
    <li class="md-nav__item md-nav__item--section md-nav__item--nested">
      
        
        
        
        <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" >
        
          
          <label class="md-nav__link" for="__nav_9" id="__nav_9_label" tabindex="">
            
  
  <span class="md-ellipsis">
    关于
  </span>
  

            <span class="md-nav__icon md-icon"></span>
          </label>
        
        <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
          <label class="md-nav__title" for="__nav_9">
            <span class="md-nav__icon md-icon"></span>
            关于
          </label>
          <ul class="md-nav__list" data-md-scrollfix>
            
              
                
  
  
  
  
    <li class="md-nav__item">
      <a href="about/" class="md-nav__link">
        
  
  <span class="md-ellipsis">
    关于
  </span>
  

      </a>
    </li>
  

              
            
          </ul>
        </nav>
      
    </li>
  

    
  </ul>
</nav>
                  </div>
                </div>
              </div>
            
            
          
          
            <div class="md-content" data-md-component="content">
              <article class="md-content__inner md-typeset">
                

              </article>
            </div>
          
          
        </div>
        
          <button type="button" class="md-top md-icon" data-md-component="top" hidden>
  
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12Z"/></svg>
  回到页面顶部
</button>
        
      </main>
      
    </div>
    <div class="md-dialog" data-md-component="dialog">
      <div class="md-dialog__inner md-typeset"></div>
    </div>
    
    
    <script id="__config" type="application/json">{"base": ".", "features": ["navigation.tabs", "navigation.tabs.sticky", "toc.integrate", "navigation.top", "navigation.indexes", "header.autohide"], "search": "assets/javascripts/workers/search.f886a092.min.js", "translations": {"clipboard.copied": "\u5df2\u590d\u5236", "clipboard.copy": "\u590d\u5236", "search.result.more.one": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.more.other": "\u5728\u8be5\u9875\u4e0a\u8fd8\u6709 # \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.none": "\u6ca1\u6709\u627e\u5230\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.one": "\u627e\u5230 1 \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.other": "# \u4e2a\u7b26\u5408\u6761\u4ef6\u7684\u7ed3\u679c", "search.result.placeholder": "\u952e\u5165\u4ee5\u5f00\u59cb\u641c\u7d22", "search.result.term.missing": "\u7f3a\u5c11", "select.version": "\u9009\u62e9\u5f53\u524d\u7248\u672c"}}</script>
    
    
  
      <script src="assets/javascripts/bundle.cd18aaf1.min.js"></script>
      
    
  <script src="assets/javascripts/custom.fe17d8dd.min.js"></script>

  </body>
</html>